.hd-portal {
	box-sizing: border-box;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	margin: 0 auto;
	max-width: 1320px;
	padding: 28px 24px 60px;
}

.hd-portal *,
.hd-portal *::before,
.hd-portal *::after {
	box-sizing: border-box;
}

.hd-card {
	background: #fff;
	border: 1px solid var(--hdt-border, #e2e5e9);
	border-radius: var(--hdt-radius-lg, 14px);
	box-shadow: 0 8px 30px rgba(20, 32, 50, .05);
	margin: 20px 0;
	padding: 24px;
}

.hd-login-card {
	margin: 50px auto;
	max-width: 460px;
}

.hd-login-card input[type="text"],
.hd-login-card input[type="password"] {
	width: 100%;
}

.hd-portal-header,
.hd-ticket-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin: 20px 0;
}

.hd-portal h1,
.hd-portal h2,
.hd-portal h3,
.hd-portal p {
	max-width: none;
}

.hd-eyebrow {
	color: #6b7280;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .09em;
	margin: 0 0 5px;
	text-transform: uppercase;
}

.hd-button,
.hd-portal .button-primary,
.hd-portal input[type="submit"] {
	background: var(--hdt-primary, #675fe8);
	border: 0;
	border-radius: 9px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-weight: 700;
	padding: 11px 17px;
	text-decoration: none;
}

.hd-button:hover,
.hd-portal .button-primary:hover,
.hd-portal input[type="submit"]:hover {
	background: var(--hdt-primary-hover, #5549d8);
	color: #fff;
}

.hd-grid {
	display: grid;
	gap: 18px;
}

.hd-grid--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hd-grid-span-2 {
	grid-column: span 2;
}

.hd-form label {
	display: block;
	font-weight: 700;
	margin: 0 0 16px;
}

.hd-form input[type="text"],
.hd-form input[type="email"],
.hd-form input[type="url"],
.hd-form input[type="number"],
.hd-form input[type="file"],
.hd-form select,
.hd-form textarea,
.hd-login-card input[type="text"],
.hd-login-card input[type="password"] {
	background: #fff;
	border: 1px solid var(--hdt-border, #cfd5dc);
	border-radius: 8px;
	display: block;
	font: inherit;
	font-weight: 400;
	margin-top: 7px;
	padding: 11px 12px;
	width: 100%;
}

.hd-form textarea {
	min-height: 120px;
	resize: vertical;
}

.hd-form small {
	color: #6b7280;
	display: block;
	font-weight: 400;
	margin-top: 6px;
}

.hd-required {
	color: #b42318;
}

.hd-ticket-list {
	display: grid;
	gap: 12px;
}

.hd-ticket-row {
	align-items: center;
	background: #fff;
	border: 1px solid var(--hdt-border, #e2e5e9);
	border-radius: 12px;
	color: var(--hdt-text, #111827);
	display: flex;
	gap: 20px;
	justify-content: space-between;
	padding: 18px 20px;
	text-decoration: none;
	transition: border-color .15s ease, transform .15s ease;
}

.hd-ticket-row:hover {
	border-color: var(--hdt-primary, #675fe8);
	color: var(--hdt-text, #111827);
	transform: translateY(-1px);
}

.hd-ticket-row strong,
.hd-ticket-row span,
.hd-ticket-row small {
	display: block;
}

.hd-ticket-row small {
	color: #6b7280;
	margin-top: 5px;
}

.hd-status {
	background: var(--hdt-surface-soft, #eef0f2);
	border-radius: 999px;
	color: var(--hdt-muted, #374151);
	display: inline-flex !important;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.2;
	padding: 7px 10px;
	white-space: nowrap;
}

.hd-status--new,
.hd-status--reopened {
	background: #e8f0fe;
	color: #174ea6;
}

.hd-status--partner_work,
.hd-status--depo_work,
.hd-status--transferred_depo {
	background: #fff4ce;
	color: #7a4b00;
}

.hd-status--need_client_info {
	background: #fce8e6;
	color: #a50e0e;
}

.hd-status--solution {
	background: #e6f4ea;
	color: #137333;
}

.hd-status--closed,
.hd-status--rejected {
	background: #eceff1;
	color: #455a64;
}

.hd-details {
	display: grid;
	grid-template-columns: 210px minmax(0, 1fr);
	gap: 10px 18px;
	margin: 22px 0;
}

.hd-details dt {
	color: #6b7280;
}

.hd-details dd {
	font-weight: 700;
	margin: 0;
}

.hd-description {
	border-top: 1px solid #e2e5e9;
	padding-top: 16px;
}

.hd-file-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.hd-file-list li {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	border-top: 1px solid #edf0f2;
	padding: 12px 0;
}

.hd-file-list li:first-child {
	border-top: 0;
}

.hd-file-list span {
	color: #6b7280;
	font-size: 12px;
}

.hd-timeline {
	border-left: 2px solid #d9dee4;
	margin-left: 8px;
	padding-left: 22px;
}

.hd-timeline-item {
	background: #f7f8fa;
	border-radius: 10px;
	margin-bottom: 14px;
	padding: 14px 16px;
	position: relative;
}

.hd-timeline-item::before {
	background: #fff;
	border: 2px solid #8b95a1;
	border-radius: 50%;
	content: "";
	height: 10px;
	left: -29px;
	position: absolute;
	top: 17px;
	width: 10px;
}

.hd-timeline-item--internal,
.hd-timeline-item--internal_mcp,
.hd-timeline-item--internal_shared {
	background: #fff8e5;
}

.hd-timeline-meta {
	align-items: center;
	color: #6b7280;
	display: flex;
	flex-wrap: wrap;
	font-size: 12px;
	gap: 9px;
}

.hd-label {
	background: #e3e6e9;
	border-radius: 999px;
	padding: 3px 7px;
}

.hd-notice {
	background: #fff;
	border-left: 4px solid #2563eb;
	border-radius: 8px;
	box-shadow: 0 4px 14px rgba(0,0,0,.05);
	margin: 16px 0;
	padding: 8px 14px;
}

.hd-notice--success {
	border-left-color: #15803d;
}

.hd-notice--error {
	border-left-color: #b42318;
}

.hd-pagination {
	display: flex;
	gap: 7px;
	justify-content: center;
	margin-top: 20px;
}

.hd-pagination a {
	border: 1px solid #d7dce1;
	border-radius: 7px;
	padding: 7px 11px;
	text-decoration: none;
}

.hd-pagination a.is-current {
	background: var(--hdt-primary, #675fe8);
	color: #fff;
}

@media (max-width: 760px) {
	.hd-grid--2,
	.hd-details {
		grid-template-columns: 1fr;
	}

	.hd-grid-span-2 {
		grid-column: auto;
	}

	.hd-portal-header,
	.hd-ticket-heading,
	.hd-ticket-row,
	.hd-file-list li {
		align-items: flex-start;
		flex-direction: column;
	}
}


/* HDT 0.2 compatibility layer. */
.hdt-main .hd-portal {
	font-family: var(--hdt-font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
}

.hdt-main .hd-card,
.hdt-main .hd-ticket-row {
	box-shadow: var(--hdt-shadow-sm, 0 8px 30px rgba(20, 32, 50, .05));
}

.hdt-main .hd-form input:focus,
.hdt-main .hd-form select:focus,
.hdt-main .hd-form textarea:focus {
	border-color: var(--hdt-primary, #675fe8);
	box-shadow: 0 0 0 .25rem rgba(103, 95, 232, .16);
	outline: none;
}


.hd-registration-header { margin: 32px auto 10px; max-width: 920px; }
.hd-registration-form { margin: 0 auto; max-width: 920px; }
.hd-registration-form input[type="password"] { background:#fff; border:1px solid var(--hdt-border,#cfd5dc); border-radius:8px; display:block; font:inherit; font-weight:400; margin-top:7px; padding:11px 12px; width:100%; }
.hd-registration-note { background:#f4f5ff; border-radius:10px; color:#4b4f63; margin-top:18px; padding:14px 16px; }
.hd-honeypot { left:-9999px !important; position:absolute !important; width:1px !important; }
.hd-button--secondary { background:#eef0f5; color:#222; }
.hd-button--secondary:hover { background:#dfe3ea; color:#111; }
.hd-registration-state { margin:50px auto; max-width:760px; }
.hd-status--registration-pending, .hd-status--registration-needs_info { background:#fff4ce; color:#7a4b00; }
.hd-status--registration-approved { background:#e6f4ea; color:#137333; }
.hd-status--registration-rejected, .hd-status--registration-withdrawn { background:#fce8e6; color:#a50e0e; }

/* Hotline DEPO 0.5: role workspaces and safe impersonation. */
.hd-portal-subtitle {
	color: #6b7280;
	margin: 6px 0 0;
}

.hd-portal-filters {
	align-items: end;
	display: grid;
	gap: 14px;
	grid-template-columns: minmax(180px, .6fr) minmax(260px, 1.6fr) auto auto;
	margin-bottom: 18px;
	padding: 18px 20px;
}

.hd-portal-filters label {
	font-size: 13px;
	font-weight: 700;
	margin: 0;
}

.hd-portal-filters input,
.hd-portal-filters select {
	background: #fff;
	border: 1px solid var(--hdt-border, #cfd5dc);
	border-radius: 8px;
	display: block;
	font: inherit;
	margin-top: 6px;
	padding: 10px 11px;
	width: 100%;
}

.hd-filter-reset {
	align-self: center;
	white-space: nowrap;
}

.hd-ticket-layout {
	align-items: start;
	display: grid;
	gap: 22px;
	grid-template-columns: minmax(0, 1fr) 340px;
}

.hd-ticket-layout--single {
	grid-template-columns: minmax(0, 1fr);
}

.hd-ticket-layout aside {
	position: sticky;
	top: 76px;
}

.hd-readonly-message {
	border-left: 4px solid #b7791f;
}

.hd-impersonation-bar {
	background: #241f12;
	border-bottom: 3px solid #f2c94c;
	color: #fff;
	left: 0;
	position: sticky;
	right: 0;
	top: 0;
	z-index: 100000;
}

.hd-impersonation-bar__content {
	align-items: center;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1440px;
	padding: 10px 22px;
}

.hd-impersonation-bar__content > div {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
}

.hd-impersonation-bar__content strong {
	color: #f9dc73;
}

.hd-impersonation-bar__content span {
	font-size: 13px;
	opacity: .92;
}

.hd-impersonation-return {
	background: #fff;
	border: 0;
	border-radius: 8px;
	color: #241f12;
	cursor: pointer;
	font-weight: 800;
	padding: 9px 14px;
	white-space: nowrap;
}

.hd-is-impersonating .hdt-header {
	top: 55px !important;
}

@media (max-width: 900px) {
	.hd-portal-filters,
	.hd-ticket-layout {
		grid-template-columns: 1fr;
	}

	.hd-ticket-layout aside {
		position: static;
	}
}

@media (max-width: 760px) {
	.hd-impersonation-bar__content,
	.hd-impersonation-bar__content > div {
		align-items: flex-start;
		flex-direction: column;
	}

	.hd-impersonation-bar__content {
		gap: 10px;
		padding: 10px 14px;
	}

	.hd-is-impersonating .hdt-header {
		top: 145px !important;
	}
}

/* Hotline DEPO 0.6: internal notification center. */
.hd-ticket-row__status {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.hd-unread-badge {
	background: #ede9fe;
	border-radius: 999px;
	color: #5145cd;
	font-size: 12px;
	font-weight: 800;
	padding: 4px 8px;
}

.hd-notification-list {
	display: grid;
	gap: 12px;
}

.hd-notification-item {
	align-items: flex-start;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	padding: 18px 20px;
}

.hd-notification-item.is-unread {
	border-left: 4px solid #d9a72f;
	background: #fff9e8;
}

.hd-notification-item.is-unread:hover {
	background: #fff6dc;
}

.hd-notification-item.is-manual-unread {
	border-left-color: #bf8a14;
	background: #fff3cf;
}

.hd-notification-item__body {
	min-width: 0;
}

.hd-notification-item__body h2 {
	font-size: 17px;
	margin: 8px 0 5px;
}

.hd-notification-item__body h2 a {
	color: inherit;
	text-decoration: none;
}

.hd-notification-item__body h2 a:hover {
	text-decoration: underline;
}

.hd-notification-item__body p {
	color: #646b78;
	margin: 0;
}

.hd-notification-item__meta {
	align-items: center;
	color: #747b87;
	display: flex;
	flex-wrap: wrap;
	font-size: 12px;
	gap: 7px;
}

.hd-label--test {
	background: #fff3cd;
	color: #7a5100;
}

.hd-link-button {
	background: none;
	border: 0;
	color: var(--hdt-primary, #675fe8);
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	padding: 4px 0;
	white-space: nowrap;
}

.hd-notification-read-state {
	color: #8a919c;
	font-size: 13px;
	white-space: nowrap;
}

@media (max-width: 700px) {
	.hd-notification-item {
		align-items: stretch;
		flex-direction: column;
	}

	.hd-notification-item__actions {
		align-self: flex-start;
	}
}

/* Hotline DEPO 0.7: multi-equipment forms and role queues. */
.hd-equipment-editor {
	margin-top: 24px;
}

.hd-equipment-editor__header {
	align-items: flex-start;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin-bottom: 14px;
}

.hd-equipment-editor__header h3,
.hd-equipment-editor__header p {
	margin: 0;
}

.hd-equipment-editor__header p {
	color: #707785;
	font-size: 13px;
	margin-top: 4px;
}

.hd-equipment-editor__rows {
	display: grid;
	gap: 14px;
}

.hd-equipment-row {
	background: #f8f9fc;
	border: 1px solid #e0e4ec;
	border-radius: 14px;
	padding: 16px;
}

.hd-equipment-row__number {
	color: #535b68;
	font-size: 13px;
	font-weight: 800;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.hd-equipment-remove {
	background: transparent;
	border: 0;
	color: #a33131;
	cursor: pointer;
	font-weight: 700;
	margin-top: 8px;
	padding: 4px 0;
}

.hd-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hd-equipment-list {
	border-top: 1px solid #e6e9ef;
	margin-top: 22px;
	padding-top: 20px;
}

.hd-equipment-list h3 {
	margin: 0 0 12px;
}

.hd-equipment-cards {
	display: grid;
	gap: 10px;
}

.hd-equipment-card {
	align-items: center;
	background: #f8f9fc;
	border: 1px solid #e0e4ec;
	border-radius: 12px;
	display: flex;
	gap: 12px;
	padding: 12px 14px;
}

.hd-equipment-card__index {
	align-items: center;
	background: #eceafe;
	border-radius: 999px;
	color: #5145cd;
	display: flex;
	font-size: 12px;
	font-weight: 800;
	height: 30px;
	justify-content: center;
	min-width: 30px;
}

.hd-equipment-card strong,
.hd-equipment-card span {
	display: block;
}

.hd-equipment-card span {
	color: #6d7480;
	font-size: 13px;
	margin-top: 2px;
}

.hd-equipment-count {
	background: #eef0f5;
	border-radius: 999px;
	color: #555d69;
	font-size: 11px;
	font-weight: 800;
	margin-left: 7px;
	padding: 3px 7px;
}

.hd-ticket-row__number {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

.hd-ticket-row__assignees {
	color: #717987 !important;
}

.hd-queue-tabs,
.hd-admin-queue-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 16px;
}

.hd-queue-tabs a,
.hd-admin-queue-tabs a {
	background: #fff;
	border: 1px solid #dde1e8;
	border-radius: 999px;
	color: #4d5562;
	font-size: 13px;
	font-weight: 700;
	padding: 8px 12px;
	text-decoration: none;
}

.hd-queue-tabs a:hover,
.hd-admin-queue-tabs a:hover,
.hd-queue-tabs a.is-current,
.hd-admin-queue-tabs a.is-current {
	background: #eceafe;
	border-color: #aca5f4;
	color: #5145cd;
}

@media (max-width: 820px) {
	.hd-grid--3 {
		grid-template-columns: 1fr;
	}

	.hd-equipment-editor__header {
		align-items: stretch;
		flex-direction: column;
	}
}

/* Hotline DEPO 0.8.0 — рабочая карточка обращения */
.hd-ticket-progress { margin-bottom: 20px; overflow: hidden; }
.hd-ticket-progress__heading,
.hd-card-heading-inline { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.hd-ticket-progress__heading h2 { margin: 4px 0 0; font-size: 1.1rem; }
.hd-progress-steps { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0; list-style: none; padding: 24px 0 0; margin: 0; }
.hd-progress-steps li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center; font-size: 12px; color: #697386; }
.hd-progress-steps li::before { content: ''; position: absolute; top: 8px; left: -50%; width: 100%; height: 2px; background: #e4e8f0; }
.hd-progress-steps li:first-child::before { display: none; }
.hd-progress-steps__dot { position: relative; z-index: 1; width: 18px; height: 18px; border: 3px solid #d9deea; border-radius: 50%; background: #fff; }
.hd-progress-steps li.is-complete::before,
.hd-progress-steps li.is-current::before { background: #6558e8; }
.hd-progress-steps li.is-complete .hd-progress-steps__dot { border-color: #6558e8; background: #6558e8; }
.hd-progress-steps li.is-current { color: #252a3a; font-weight: 700; }
.hd-progress-steps li.is-current .hd-progress-steps__dot { border-color: #6558e8; box-shadow: 0 0 0 5px rgba(101,88,232,.13); }
.hd-quick-actions__buttons { display: grid; gap: 8px; }
.hd-quick-actions__buttons form { margin: 0; }
.hd-quick-actions__buttons .hd-button { width: 100%; justify-content: center; }
.hd-resolution-summary { margin-top: 22px; padding: 18px; border: 1px solid #cfe8d9; border-radius: 14px; background: #f3fbf6; }
.hd-resolution-summary h3 { margin-top: 0; }
.hd-label--public { background: #eef8f2; color: #247548; }
.hd-file-list li > div { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.hd-timeline-item--message { border-left-color: #6558e8; }
.hd-timeline-item--event { border-left-color: #9ca6ba; background: #fafbfc; }
.hd-management textarea[name="resolution_summary"] { min-height: 120px; }

@media (max-width: 760px) {
  .hd-progress-steps { grid-template-columns: 1fr; gap: 10px; padding-top: 16px; }
  .hd-progress-steps li { min-height: 30px; flex-direction: row; text-align: left; }
  .hd-progress-steps li::before { left: 8px; top: -12px; width: 2px; height: 22px; }
  .hd-ticket-progress__heading { flex-direction: column; }
}

/* Hotline DEPO 0.9.0 — организации и сотрудники */
.hd-status--registration-suspended { background:#eef1f6; color:#4d5562; }
.hd-card-heading { align-items:flex-start; display:flex; gap:16px; justify-content:space-between; margin-bottom:14px; }
.hd-card-heading h2 { margin:0; }
.hd-card-heading p { color:#697386; margin:5px 0 0; }

/* Hotline DEPO 0.9.1 — фронтовый каталог организаций */
.hd-header-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.hd-active-filter {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: space-between;
	margin-bottom: 16px;
	padding: 13px 16px;
}

.hd-active-filter a,
.hd-organization-link {
	color: var(--hdt-primary, #675fe8);
	font-weight: 700;
	text-decoration: none;
}

.hd-organization-link.is-disabled {
	color: #697386;
	font-weight: 600;
}

.hd-ticket-row__ticket-link {
	color: inherit;
	flex: 1 1 auto;
	min-width: 0;
	text-decoration: none;
}

.hd-ticket-row__ticket-link:hover {
	color: inherit;
}

.hd-ticket-row__side {
	align-items: flex-end;
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	gap: 9px;
	max-width: 250px;
	text-align: right;
}

.hd-ticket-row__status .hd-status {
	text-decoration: none;
}

.hd-organization-filters {
	grid-template-columns: minmax(260px, 1fr) auto auto auto auto;
}

.hd-directory-summary {
	color: #697386;
	margin: 0 0 14px;
}

.hd-organization-directory {
	display: grid;
	gap: 12px;
}

.hd-organization-row {
	align-items: center;
	display: grid;
	gap: 20px;
	grid-template-columns: minmax(0, 1fr) auto auto;
	margin: 0;
}

.hd-organization-row h2 {
	font-size: 1.08rem;
	margin: 3px 0 6px;
}

.hd-organization-row h2 a {
	color: var(--hdt-text, #111827);
	text-decoration: none;
}

.hd-organization-row h2 a:hover {
	color: var(--hdt-primary, #675fe8);
}

.hd-organization-row p {
	margin: 0;
}

.hd-organization-row__metrics {
	display: flex;
	gap: 18px;
}

.hd-organization-row__metrics span {
	min-width: 72px;
	text-align: center;
}

.hd-organization-row__metrics strong,
.hd-organization-row__metrics small {
	display: block;
}

.hd-organization-row__metrics strong {
	font-size: 1.18rem;
}

.hd-organization-row__metrics small {
	color: #697386;
	font-size: 12px;
	margin-top: 2px;
}

.hd-organization-row__actions {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.hd-related-tickets {
	display: grid;
	gap: 8px;
}

.hd-related-tickets > a {
	align-items: center;
	border: 1px solid #e1e5ed;
	border-radius: 10px;
	color: inherit;
	display: flex;
	gap: 14px;
	justify-content: space-between;
	padding: 12px 14px;
	text-decoration: none;
}

.hd-related-tickets > a:hover {
	border-color: var(--hdt-primary, #675fe8);
}

.hd-related-tickets strong,
.hd-related-tickets small {
	display: block;
}

.hd-related-tickets small {
	color: #697386;
	margin-top: 3px;
}

.hd-contact-list {
	display: grid;
	gap: 10px;
}

.hd-contact-list > div {
	background: #f8f9fc;
	border: 1px solid #e1e5ed;
	border-radius: 10px;
	padding: 12px 14px;
}

.hd-contact-list strong,
.hd-contact-list a {
	display: block;
}

.hd-contact-list a {
	margin-top: 4px;
}

@media (max-width: 900px) {
	.hd-organization-filters {
		grid-template-columns: 1fr 1fr;
	}

	.hd-organization-row {
		grid-template-columns: 1fr;
	}

	.hd-organization-row__metrics {
		justify-content: flex-start;
	}

	.hd-organization-row__actions,
	.hd-ticket-row__side {
		align-items: flex-start;
		max-width: none;
		text-align: left;
	}
}

@media (max-width: 640px) {
	.hd-header-actions,
	.hd-active-filter,
	.hd-ticket-row,
	.hd-related-tickets > a {
		align-items: stretch;
		flex-direction: column;
	}

	.hd-organization-filters {
		grid-template-columns: 1fr;
	}
}

/* Hotline DEPO 0.10: controlled ticket creation and editing. */
.hd-ticket-form__heading {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	align-items: flex-start;
}

.hd-ticket-form__heading p,
.hd-form-hint {
	margin: .35rem 0 0;
	color: var(--hd-muted, #667085);
}

.hd-equipment-editor [data-hd-equipment-add]:disabled {
	opacity: .55;
	cursor: not-allowed;
}


.hd-notification-read-state.is-unread {
	font-weight: 700;
	color: #8a5a00;
}

.hd-notification-read-state.is-manual {
  background: #fff0b8;
  color: #725000;
}

.hd-notification-read-state.is-readonly {
	white-space: nowrap;
}


/* Notification attention confirmation — 0.10.3 */
.hd-notification-readonly-notice {
  border-inline-start: 4px solid var(--hd-color-warning, #b7791f);
}
.hd-notification-item {
  transition: opacity .2s ease, transform .2s ease, border-color .2s ease;
}
.hd-notification-item.is-awaiting-view-confirmation {
  border-color: rgba(15, 96, 160, .38);
}
.hd-notification-item.is-confirming-view {
  opacity: .72;
}
.hd-notification-item.is-read-confirmed {
  border-color: rgba(49, 130, 206, .38);
  background: #f8fbff;
}

/* Hotline DEPO 0.12.3 — notification history, manual unread lock and visual states */
.hd-notification-item.is-read {
  background: #fff;
}

.hd-notification-item__actions {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.hd-button--small {
  font-size: 13px;
  min-height: auto;
  padding: 8px 12px;
}

.hd-notification-filters {
  align-items: end;
  grid-template-columns: minmax(260px, 1.5fr) repeat(3, minmax(150px, 1fr));
}

.hd-notification-filters .hd-filter-search {
  grid-column: span 2;
}

.hd-notification-filter-actions {
  display: flex;
  gap: 10px;
}

@media (max-width: 1000px) {
  .hd-notification-filters {
    grid-template-columns: 1fr 1fr;
  }

  .hd-notification-filters .hd-filter-search {
    grid-column: span 2;
  }
}

@media (max-width: 640px) {
  .hd-notification-filters {
    grid-template-columns: 1fr;
  }

  .hd-notification-filters .hd-filter-search {
    grid-column: auto;
  }

  .hd-notification-item__actions {
    align-items: flex-start;
  }
}

/* Hotline DEPO 0.12.0 — переписка, внутренние заметки и вложения */
.hd-communication-form {
	position: relative;
}

.hd-communication-form.is-internal {
	border-color: #e7c66f;
}

.hd-internal-warning {
	background: #fff8e5;
	border: 1px solid #ead69b;
	border-radius: 10px;
	color: #6f5310;
	margin: -4px 0 16px;
	padding: 12px 14px;
}

.hd-selected-files {
	background: #f7f8fa;
	border: 1px solid #e1e5eb;
	border-radius: 10px;
	margin: 0 0 16px;
	padding: 12px 14px;
}

.hd-selected-files > strong {
	display: block;
	margin-bottom: 8px;
}

.hd-selected-files ul,
.hd-message-attachments ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.hd-selected-files li,
.hd-message-attachments li {
	align-items: center;
	border-top: 1px solid #e5e8ed;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	padding: 8px 0;
}

.hd-selected-files li:first-child,
.hd-message-attachments li:first-child {
	border-top: 0;
}

.hd-selected-files small,
.hd-message-attachments span {
	color: #697386;
	white-space: nowrap;
}

.hd-form-error {
	background: #fff0f0;
	border-radius: 8px;
	color: #a50e0e;
	font-weight: 600;
	padding: 10px 12px;
}

.hd-message-attachments {
	background: rgba(255, 255, 255, .72);
	border: 1px solid rgba(101, 88, 232, .18);
	border-radius: 10px;
	margin-top: 12px;
	padding: 10px 12px;
}

.hd-message-attachments > strong {
	display: block;
	font-size: 12px;
	margin-bottom: 4px;
	text-transform: uppercase;
}

.hd-timeline-item--internal .hd-message-attachments,
.hd-timeline-item--internal_mcp .hd-message-attachments,
.hd-timeline-item--internal_shared .hd-message-attachments {
	border-color: rgba(154, 111, 0, .25);
}

@media (max-width: 620px) {
	.hd-selected-files li,
	.hd-message-attachments li {
		align-items: flex-start;
		flex-direction: column;
		gap: 3px;
	}
}

/* 0.13.0 — решение, закрытие и повторное открытие */
.hd-lifecycle-action {
	border-color: #d7d5ff;
	background: #f8f7ff;
}

.hd-lifecycle-action h2 {
	margin-bottom: .4rem;
}

.hd-reopen-form textarea {
	min-height: 7.5rem;
}

.hd-resolution-summary {
	margin-top: 1.25rem;
	padding: 1rem 1.1rem;
	border: 1px solid #d9e8dc;
	border-radius: 14px;
	background: #f5fbf6;
}

.hd-resolution-summary h3 {
	margin-top: 0;
}

/* Registration clarification workflow. */
.hd-registration-review {
	border-left: 4px solid #d39a00;
	background: #fff8df;
	padding: 1rem 1.1rem;
	border-radius: 0.75rem;
}

.hd-registration-resubmit {
	margin-top: 1rem;
}

.hd-registration-events ol {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.75rem;
}

.hd-registration-events li {
	border-left: 3px solid #d8ddeb;
	padding: 0.15rem 0 0.15rem 1rem;
}

.hd-registration-events li span {
	display: block;
	color: #687386;
	font-size: 0.875rem;
	margin-top: 0.15rem;
}

.hd-registration-events li p {
	margin: 0.35rem 0 0;
}

/* 0.14.3: режим учителя и приглашения сотрудников. */
.hd-demo-guide--frontend {
	border: 1px solid #b6d4fe;
	border-left: 5px solid #0d6efd;
	background: #eef6ff;
	margin-bottom: 1rem;
}
.hd-demo-guide--frontend h2 {
	margin-top: .25rem;
}
.hd-invitation-link {
	padding: 1rem;
	border-radius: .75rem;
	background: #eefaf2;
	margin-bottom: 1rem;
}
.hd-invitation-link input[readonly] {
	width: 100%;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.hd-invitation-form {
	margin-bottom: 1rem;
}

/* 0.14.5 — фронтовый кабинет сотрудников и приглашений. */
.hd-organization-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin: 0 0 1.25rem;
}

.hd-organization-tabs a {
	background: #fff;
	border: 1px solid #d9dfeb;
	border-radius: 999px;
	color: #344054;
	font-weight: 700;
	padding: .65rem 1rem;
	text-decoration: none;
}

.hd-organization-tabs a:hover,
.hd-organization-tabs a:focus-visible,
.hd-organization-tabs a.is-current {
	background: #6558e8;
	border-color: #6558e8;
	color: #fff;
}

.hd-staff-table th,
.hd-staff-table td,
.hd-invitation-table th,
.hd-invitation-table td {
	vertical-align: top;
}

.hd-staff-actions,
.hd-inline-form {
	display: flex;
	flex-wrap: wrap;
	gap: .45rem;
}

.hd-staff-actions {
	align-items: flex-start;
	flex-direction: column;
}

.hd-inline-form select {
	min-width: 170px;
}

.hd-staff-profile-editor {
	margin-top: .35rem;
	width: 100%;
}

.hd-staff-profile-editor summary {
	color: #5b4ee5;
	cursor: pointer;
	font-weight: 700;
}

.hd-staff-profile-editor .hd-form {
	background: #f7f8fc;
	border: 1px solid #e1e5ee;
	border-radius: .75rem;
	display: grid;
	gap: .6rem;
	margin-top: .55rem;
	padding: .75rem;
}

.hd-member-status,
.hd-invitation-status {
	border-radius: 999px;
	display: inline-flex;
	font-size: .78rem;
	font-weight: 800;
	padding: .25rem .55rem;
}

.hd-member-status--active,
.hd-invitation-status--accepted {
	background: #e8f7ec;
	color: #176c32;
}

.hd-member-status--suspended,
.hd-invitation-status--revoked,
.hd-invitation-status--expired {
	background: #f1f2f5;
	color: #667085;
}

.hd-invitation-status--pending,
.hd-invitation-status--processing {
	background: #fff3cd;
	color: #805b00;
}

.hd-invitation-link label {
	display: grid;
	font-weight: 700;
	gap: .35rem;
}

.hd-button.is-copy-success {
	background: #198754;
	border-color: #198754;
	color: #fff;
}

.hd-form-hint {
	color: #667085;
	font-size: .9rem;
}

.hd-organization-events {
	display: grid;
	gap: .75rem;
}

.hd-organization-events > p {
	border-left: 3px solid #d9dfeb;
	margin: 0;
	padding: .25rem 0 .25rem 1rem;
}

@media (max-width: 980px) {
	.hd-staff-table,
	.hd-staff-table tbody,
	.hd-staff-table tr,
	.hd-staff-table td,
	.hd-invitation-table,
	.hd-invitation-table tbody,
	.hd-invitation-table tr,
	.hd-invitation-table td {
		display: block;
		width: 100%;
	}

	.hd-staff-table thead,
	.hd-invitation-table thead {
		display: none;
	}

	.hd-staff-table tr,
	.hd-invitation-table tr {
		border-bottom: 1px solid #e1e5ee;
		padding: .8rem;
	}

	.hd-staff-table td,
	.hd-invitation-table td {
		border: 0;
		padding: .35rem 0;
	}
}

@media (max-width: 620px) {
	.hd-organization-tabs {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.hd-organization-tabs a {
		border-radius: .75rem;
		text-align: center;
	}
}

/* 0.14.7: профиль, восстановление доступа и безопасность сеансов. */
.hd-access-state-card {
	max-width: 760px;
	margin-inline: auto;
}

.hd-access-request-state,
.hd-access-request {
	border: 1px solid #d7dde5;
	border-radius: 12px;
	padding: 16px;
	background: #fff;
}

.hd-access-request-list {
	display: grid;
	gap: 14px;
}

.hd-access-request--pending {
	border-color: #e8c96a;
	background: #fffbed;
}

.hd-access-request--approved {
	border-color: #97c7a8;
	background: #f4fbf6;
}

.hd-access-request--rejected {
	border-color: #e1a2a2;
	background: #fff7f7;
}

.hd-access-request--cancelled {
	background: #f7f8fa;
}

.hd-access-request__heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 12px;
}

.hd-access-request__heading small {
	display: block;
	margin-top: 3px;
	color: #687386;
}

.hd-access-request__decision {
	padding: 10px 12px;
	border-radius: 8px;
	background: rgba(255, 255, 255, .72);
}

.hd-access-request__actions {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid rgba(87, 98, 115, .18);
}

@media (max-width: 680px) {
	.hd-access-request__heading {
		flex-direction: column;
	}
}

/* 0.14.8 — настройки безопасности организации и уведомлений */
.hd-notification-preferences {
	display: grid;
	gap: .75rem;
}

.hd-check-row {
	display: flex;
	align-items: flex-start;
	gap: .75rem;
	padding: .9rem 1rem;
	border: 1px solid var(--hd-border, #dfe4ea);
	border-radius: .75rem;
	background: #fff;
	cursor: pointer;
}

.hd-check-row input[type="checkbox"] {
	margin-top: .2rem;
	width: 1.1rem;
	height: 1.1rem;
	flex: 0 0 auto;
}

.hd-check-row span {
	display: grid;
	gap: .2rem;
}

.hd-check-row small {
	color: var(--hd-muted, #667085);
	line-height: 1.45;
}

.hd-check-row.is-disabled {
	background: #f6f7f9;
	cursor: not-allowed;
	opacity: .82;
}

.hd-form-help {
	margin: .75rem 0 0;
	color: var(--hd-muted, #667085);
	font-size: .92rem;
}

/* Hotline DEPO 0.15.0 — ролевые очереди, глобальный поиск и фильтры. */
.hd-queue-tabs a,
.hd-admin-queue-tabs a {
	align-items: center;
	display: inline-flex;
	gap: 8px;
}

.hd-queue-count {
	align-items: center;
	background: #eef0f5;
	border-radius: 999px;
	color: #4d5562;
	display: inline-flex;
	font-size: 11px;
	font-weight: 800;
	justify-content: center;
	min-width: 24px;
	padding: 2px 7px;
}

.hd-queue-tabs a.is-current .hd-queue-count,
.hd-admin-queue-tabs a.is-current .hd-queue-count {
	background: #fff;
	color: #5145cd;
}

.hd-ticket-filters {
	grid-template-columns: minmax(160px, .6fr) minmax(180px, .8fr) minmax(180px, .8fr) minmax(260px, 1.5fr);
}

.hd-filter-advanced {
	grid-column: 1 / -1;
}

.hd-filter-advanced summary {
	color: #4d5562;
	cursor: pointer;
	font-size: 13px;
	font-weight: 800;
}

.hd-filter-advanced__grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(150px, 1fr));
	margin-top: 14px;
}

.hd-filter-actions {
	align-items: center;
	display: flex;
	gap: 14px;
	grid-column: 1 / -1;
}

.hd-list-summary {
	color: #697386;
	margin: 0 0 12px;
}

.hd-empty-state {
	padding: 28px;
	text-align: center;
}

.hd-empty-state h2 {
	margin-top: 0;
}

@media (max-width: 1100px) {
	.hd-ticket-filters,
	.hd-filter-advanced__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.hd-ticket-filters,
	.hd-filter-advanced__grid {
		grid-template-columns: 1fr;
	}

	.hd-filter-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.hd-filter-actions .hd-button,
	.hd-filter-actions .hd-filter-reset {
		text-align: center;
		width: 100%;
	}
}

/* Hotline DEPO 0.16.0 — операционные панели МЦП и ДЕПО. */
.hd-operations-dashboard {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.hd-operations-heading {
	align-items: flex-end;
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin-bottom: 18px;
}

.hd-operations-heading h2,
.hd-operations-heading p {
	margin: 0;
}

.hd-operations-heading h2 {
	font-size: clamp(1.45rem, 2.4vw, 2rem);
	margin-bottom: 6px;
}

.hd-operations-heading > div > p:last-child {
	color: #687386;
	max-width: 760px;
}

.hd-operation-queues {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin-bottom: 20px;
}

.hd-operation-queue {
	align-items: center;
	background: #fff;
	border: 1px solid var(--hdt-border, #e2e5e9);
	border-radius: 12px;
	color: var(--hdt-text, #111827);
	display: flex;
	gap: 12px;
	justify-content: space-between;
	min-height: 72px;
	padding: 14px 16px;
	text-decoration: none;
	transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.hd-operation-queue:hover {
	border-color: var(--hdt-primary, #675fe8);
	box-shadow: 0 8px 24px rgba(20, 32, 50, .08);
	color: var(--hdt-text, #111827);
	transform: translateY(-1px);
}

.hd-operation-queue span {
	font-size: 13px;
	font-weight: 700;
	line-height: 1.3;
}

.hd-operation-queue strong {
	align-items: center;
	background: #f0efff;
	border-radius: 999px;
	color: #5145cd;
	display: inline-flex;
	font-size: 14px;
	justify-content: center;
	min-width: 34px;
	padding: 6px 9px;
}

.hd-operations-grid {
	display: grid;
	gap: 20px;
	grid-template-columns: minmax(0, 1.35fr) minmax(320px, .85fr);
}

.hd-operation-panel {
	margin: 0;
	min-width: 0;
	padding: 0;
	overflow: hidden;
}

.hd-operation-panel__heading {
	align-items: flex-start;
	border-bottom: 1px solid var(--hdt-border, #e2e5e9);
	display: flex;
	gap: 18px;
	justify-content: space-between;
	padding: 20px 22px;
}

.hd-operation-panel__heading h3,
.hd-operation-panel__heading p {
	margin: 0;
}

.hd-operation-panel__heading h3 {
	font-size: 1.05rem;
	margin-bottom: 4px;
}

.hd-operation-panel__heading p {
	color: #687386;
	font-size: 13px;
}

.hd-operation-panel__heading > a {
	font-size: 13px;
	font-weight: 700;
	white-space: nowrap;
}

.hd-operation-ticket-list,
.hd-operation-notifications {
	display: grid;
}

.hd-operation-ticket,
.hd-operation-notification {
	align-items: center;
	border-bottom: 1px solid var(--hdt-border, #e8ebef);
	color: var(--hdt-text, #111827);
	display: flex;
	gap: 18px;
	justify-content: space-between;
	padding: 16px 22px;
	text-decoration: none;
}

.hd-operation-ticket:last-child,
.hd-operation-notification:last-child {
	border-bottom: 0;
}

.hd-operation-ticket:hover,
.hd-operation-notification:hover {
	background: #fafafe;
	color: var(--hdt-text, #111827);
}

.hd-operation-ticket__main,
.hd-operation-notification > span {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.hd-operation-ticket__main strong,
.hd-operation-notification strong {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.hd-operation-ticket__number {
	color: #5145cd;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .02em;
}

.hd-operation-ticket small,
.hd-operation-notification small,
.hd-operation-notification time {
	color: #687386;
	font-size: 12px;
}

.hd-operation-ticket__side {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: 7px;
	text-align: right;
}

.hd-operation-reason {
	color: #5d6572;
	font-size: 12px;
	font-weight: 700;
}

.hd-operation-notification {
	align-items: flex-start;
}

.hd-operation-notification.is-unread {
	background: #fff9e8;
}

.hd-operation-notification time {
	flex: 0 0 auto;
	white-space: nowrap;
}

.hd-operation-empty {
	align-items: center;
	display: grid;
	gap: 5px;
	justify-items: center;
	padding: 42px 24px;
	text-align: center;
}

.hd-operation-empty span {
	color: #687386;
	font-size: 13px;
}

@media (max-width: 1180px) {
	.hd-operation-queues {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.hd-operations-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px) {
	.hd-operations-heading,
	.hd-operation-panel__heading,
	.hd-operation-ticket,
	.hd-operation-notification {
		align-items: stretch;
		flex-direction: column;
	}

	.hd-operations-heading .hd-button,
	.hd-operation-panel__heading > a {
		align-self: flex-start;
	}

	.hd-operation-queues {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hd-operation-ticket__side {
		align-items: flex-start;
		text-align: left;
	}

	.hd-operation-notification time {
		white-space: normal;
	}
}

@media (max-width: 460px) {
	.hd-operation-queues {
		grid-template-columns: 1fr;
	}
}

/* Hotline DEPO 0.17.0 — защищённый жизненный цикл номера ДЕПО. */
.hd-depo-number-card {
  display: grid;
  gap: 16px;
}

.hd-depo-number-lock {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 10px;
  border-radius: 999px;
  background: #eef2f7;
  color: #3f4b5f;
  font-size: 12px;
  font-weight: 700;
}

.hd-depo-number-warning,
.hd-depo-number-danger,
.hd-depo-number-empty,
.hd-depo-number-locked-note {
  margin: 0;
  padding: 12px 14px;
  border-radius: 10px;
  line-height: 1.5;
}

.hd-depo-number-warning {
  border: 1px solid #f0c35a;
  background: #fff8df;
  color: #5f4700;
}

.hd-depo-number-danger {
  margin-bottom: 14px;
  border: 1px solid #e0a6a6;
  background: #fff0f0;
  color: #792929;
}

.hd-depo-number-empty,
.hd-depo-number-locked-note {
  border: 1px solid #d8dee9;
  background: #f7f9fc;
  color: #536075;
}

.hd-depo-number-current input[readonly] {
  font-weight: 700;
  background: #f4f6f9;
}

.hd-depo-number-change {
  border: 1px solid #d8dee9;
  border-radius: 10px;
  padding: 0 14px;
}

.hd-depo-number-change > summary {
  cursor: pointer;
  padding: 13px 0;
  font-weight: 700;
}

.hd-depo-number-change[open] {
  padding-bottom: 14px;
}

.hd-depo-number-confirm {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start;
  gap: 10px;
  font-weight: 600;
}

.hd-depo-number-confirm input {
  width: auto !important;
  margin-top: 3px;
}

.hd-depo-number-history {
  border-top: 1px solid #e3e8f0;
  padding-top: 14px;
}

.hd-depo-number-history h3 {
  margin: 0 0 10px;
  font-size: 16px;
}

.hd-depo-number-history ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hd-depo-number-history li {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border-radius: 8px;
  background: #f7f9fc;
}

.hd-depo-number-history li strong {
  font-size: 12px;
  color: #657087;
}

@media (max-width: 640px) {
  .hd-depo-number-card .hd-card-heading-inline {
    align-items: flex-start;
    gap: 10px;
  }
}

/* Hotline DEPO 0.20.0 — финальное рабочее место клиента. */
.hd-client-dashboard {
	display: grid;
	gap: 24px;
}

.hd-client-dashboard__heading,
.hd-client-panel-heading {
	align-items: flex-start;
	display: flex;
	gap: 20px;
	justify-content: space-between;
}

.hd-client-dashboard__heading h2,
.hd-client-panel-heading h3,
.hd-client-organization h3 {
	margin: 0;
}

.hd-client-dashboard__heading p,
.hd-client-panel-heading p {
	color: #687386;
	margin: 6px 0 0;
}

.hd-client-dashboard__grid {
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
}

.hd-client-attention,
.hd-client-progress,
.hd-client-organization {
	overflow: hidden;
}

.hd-client-panel-heading {
	border-bottom: 1px solid var(--hdt-border, #e8ebef);
	padding: 22px 24px;
}

.hd-client-panel-heading > a {
	font-size: 13px;
	font-weight: 700;
	white-space: nowrap;
}

.hd-client-attention-list {
	display: grid;
}

.hd-client-attention-item {
	align-items: center;
	border-bottom: 1px solid var(--hdt-border, #e8ebef);
	color: var(--hdt-text, #111827);
	display: flex;
	gap: 18px;
	justify-content: space-between;
	padding: 16px 22px;
	text-decoration: none;
}

.hd-client-attention-item:last-child {
	border-bottom: 0;
}

.hd-client-attention-item:hover {
	background: #fafafe;
	color: var(--hdt-text, #111827);
}

.hd-client-attention-item__main {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.hd-client-attention-item__main strong {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.hd-client-attention-item__main small {
	color: #687386;
	font-size: 12px;
}

.hd-client-ticket-number {
	color: #5145cd;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .02em;
}

.hd-client-attention-item__side {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: 7px;
	text-align: right;
}

.hd-client-reason {
	color: #5d6572;
	font-size: 12px;
	font-weight: 700;
}

.hd-client-empty {
	align-items: center;
	display: grid;
	gap: 5px;
	justify-items: center;
	padding: 42px 24px;
	text-align: center;
}

.hd-client-empty span {
	color: #687386;
	font-size: 13px;
}

.hd-client-organization {
	display: flex;
	flex-direction: column;
	padding: 24px;
}

.hd-client-organization dl {
	display: grid;
	gap: 12px;
	margin: 22px 0;
}

.hd-client-organization dl > div {
	border-bottom: 1px solid var(--hdt-border, #e8ebef);
	display: grid;
	gap: 3px;
	padding-bottom: 12px;
}

.hd-client-organization dl > div:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.hd-client-organization dt {
	color: #687386;
	font-size: 12px;
	font-weight: 700;
}

.hd-client-organization dd {
	font-weight: 700;
	margin: 0;
}

.hd-client-organization__actions {
	align-items: flex-start;
	display: grid;
	gap: 12px;
	margin-top: auto;
}

.hd-client-organization__actions > a:not(.hd-button) {
	font-size: 13px;
	font-weight: 700;
}

.hd-client-progress__steps {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 26px 24px 18px;
}

.hd-client-progress__steps li {
	align-items: flex-start;
	display: grid;
	gap: 12px;
	grid-template-columns: 32px 1fr;
	padding-right: 18px;
	position: relative;
}

.hd-client-progress__steps li:not(:last-child)::after {
	background: #dfe3ea;
	content: '';
	height: 2px;
	left: 32px;
	position: absolute;
	top: 15px;
	width: calc(100% - 12px);
	z-index: 0;
}

.hd-client-progress__steps li.is-complete:not(:last-child)::after {
	background: #6757e5;
}

.hd-client-progress__number {
	align-items: center;
	background: #eef0f5;
	border: 2px solid #dfe3ea;
	border-radius: 50%;
	display: inline-flex;
	font-size: 12px;
	font-weight: 800;
	height: 32px;
	justify-content: center;
	position: relative;
	width: 32px;
	z-index: 1;
}

.hd-client-progress__steps li.is-complete .hd-client-progress__number {
	background: #6757e5;
	border-color: #6757e5;
	color: #fff;
}

.hd-client-progress__steps li.is-current .hd-client-progress__number {
	background: #fff;
	border-color: #6757e5;
	color: #5145cd;
	box-shadow: 0 0 0 4px rgba(103, 87, 229, .12);
}

.hd-client-progress__steps li > span:last-child {
	display: grid;
	gap: 4px;
	min-width: 0;
	padding-top: 4px;
}

.hd-client-progress__steps strong {
	font-size: 13px;
}

.hd-client-progress__steps small {
	color: #687386;
	font-size: 12px;
	line-height: 1.45;
}

.hd-client-progress__privacy {
	background: #f7f8fb;
	border-top: 1px solid var(--hdt-border, #e8ebef);
	color: #687386;
	font-size: 12px;
	margin: 0;
	padding: 14px 24px;
}

@media (max-width: 1180px) {
	.hd-client-dashboard__grid {
		grid-template-columns: 1fr;
	}

	.hd-client-progress__steps {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.hd-client-progress__steps li {
		padding-right: 0;
	}

	.hd-client-progress__steps li:not(:last-child)::after {
		height: calc(100% + 16px);
		left: 15px;
		top: 30px;
		width: 2px;
	}
}

@media (max-width: 760px) {
	.hd-client-dashboard__heading,
	.hd-client-panel-heading,
	.hd-client-attention-item {
		align-items: stretch;
		flex-direction: column;
	}

	.hd-client-dashboard__heading .hd-button,
	.hd-client-panel-heading > a {
		align-self: flex-start;
	}

	.hd-client-attention-item__side {
		align-items: flex-start;
		text-align: left;
	}
}

/* Hotline DEPO 0.21.0 — финальные рабочие места МЦП и ДЕПО. */
.hd-staff-workplace {
	background: linear-gradient(135deg, #f8f8ff 0%, #f4f7fb 100%);
	border: 1px solid #deddf7;
	border-radius: 18px;
	display: grid;
	gap: 18px;
	margin-bottom: 22px;
	padding: 22px;
}

.hd-staff-workplace__heading,
.hd-staff-panel__heading {
	align-items: flex-start;
	display: flex;
	gap: 18px;
	justify-content: space-between;
}

.hd-staff-workplace__heading h3,
.hd-staff-workplace__heading p,
.hd-staff-panel__heading h4,
.hd-staff-panel__heading p {
	margin: 0;
}

.hd-staff-workplace__heading h3 {
	font-size: clamp(1.2rem, 2vw, 1.6rem);
	margin-bottom: 5px;
}

.hd-staff-workplace__heading > div > p:last-child,
.hd-staff-panel__heading p {
	color: #687386;
	font-size: 13px;
}

.hd-workflow-lanes {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.hd-workflow-lane {
	align-items: flex-start;
	background: #fff;
	border: 1px solid #e0e3ea;
	border-radius: 12px;
	color: var(--hdt-text, #111827);
	display: grid;
	gap: 10px;
	grid-template-columns: 36px 1fr;
	min-height: 94px;
	padding: 14px;
	position: relative;
	text-decoration: none;
	transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.hd-workflow-lane:not(:last-child)::after {
	color: #a8afbc;
	content: '→';
	font-size: 18px;
	position: absolute;
	right: -10px;
	top: 34px;
	z-index: 2;
}

.hd-workflow-lane:hover,
.hd-workflow-lane:focus-visible {
	border-color: #6757e5;
	box-shadow: 0 8px 22px rgba(39, 43, 77, .08);
	color: var(--hdt-text, #111827);
	transform: translateY(-1px);
}

.hd-workflow-lane__number {
	align-items: center;
	background: #efefff;
	border-radius: 999px;
	color: #5145cd;
	display: inline-flex;
	font-size: 13px;
	font-weight: 800;
	height: 36px;
	justify-content: center;
	min-width: 36px;
	padding: 0 8px;
}

.hd-workflow-lane > span:last-child {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.hd-workflow-lane strong {
	font-size: 13px;
	line-height: 1.35;
}

.hd-workflow-lane small {
	color: #687386;
	font-size: 11px;
	line-height: 1.4;
}

.hd-staff-workplace__grid {
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
}

.hd-staff-panel {
	margin: 0;
	overflow: hidden;
	padding: 0;
}

.hd-staff-panel__heading {
	border-bottom: 1px solid var(--hdt-border, #e8ebef);
	padding: 18px 20px;
}

.hd-staff-panel__heading h4 {
	font-size: 1rem;
	margin-bottom: 4px;
}

.hd-staff-panel__heading > a {
	font-size: 13px;
	font-weight: 700;
	white-space: nowrap;
}

.hd-personal-work-list {
	display: grid;
}

.hd-staff-actions-list {
	display: grid;
	gap: 0;
}

.hd-staff-action {
	align-items: center;
	border-bottom: 1px solid var(--hdt-border, #e8ebef);
	color: var(--hdt-text, #111827);
	display: flex;
	gap: 14px;
	justify-content: space-between;
	padding: 15px 18px;
	text-decoration: none;
}

.hd-staff-action:last-child {
	border-bottom: 0;
}

.hd-staff-action:hover,
.hd-staff-action:focus-visible {
	background: #fafafe;
	color: var(--hdt-text, #111827);
}

.hd-staff-action > span:first-child {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.hd-staff-action strong {
	font-size: 13px;
}

.hd-staff-action small {
	color: #687386;
	font-size: 12px;
	line-height: 1.4;
}

.hd-staff-action__count {
	align-items: center;
	background: #efefff;
	border-radius: 999px;
	color: #5145cd;
	display: inline-flex;
	font-size: 12px;
	font-weight: 800;
	justify-content: center;
	min-width: 34px;
	padding: 6px 9px;
}

.hd-workplace-empty a {
	font-size: 13px;
	font-weight: 700;
	margin-top: 5px;
}

@media (max-width: 1180px) {
	.hd-workflow-lanes {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.hd-workflow-lane::after {
		display: none;
	}

	.hd-staff-workplace__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px) {
	.hd-staff-workplace {
		border-radius: 14px;
		padding: 16px;
	}

	.hd-staff-workplace__heading,
	.hd-staff-panel__heading {
		align-items: stretch;
		flex-direction: column;
	}

	.hd-staff-workplace__heading .hd-button,
	.hd-staff-panel__heading > a {
		align-self: flex-start;
	}

	.hd-workflow-lanes {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 480px) {
	.hd-workflow-lanes {
		grid-template-columns: 1fr;
	}

	.hd-workflow-lane {
		min-height: 0;
	}
}


/* Hotline DEPO 0.22.0 — единое рабочее пространство обращения. */
.hd-ticket-workspace-header {
	background: linear-gradient(135deg, #ffffff 0%, #f7f7ff 100%);
	border: 1px solid #e2e4ef;
	border-radius: 18px;
	box-shadow: 0 10px 30px rgba(25, 31, 52, .06);
	margin-bottom: 12px;
	padding: 20px 22px;
}
.hd-ticket-workspace-header__topline,
.hd-ticket-workspace-header__main,
.hd-ticket-workspace-header__actions {
	align-items: center;
	display: flex;
	gap: 12px;
}
.hd-ticket-workspace-header__topline { justify-content: space-between; margin-bottom: 14px; }
.hd-ticket-workspace-header__main { align-items: flex-start; justify-content: space-between; }
.hd-ticket-workspace-header__main h1 { font-size: clamp(1.35rem, 2.4vw, 2rem); margin: 4px 0 8px; }
.hd-ticket-workspace-header__main p { color: #697386; margin: 0; }
.hd-ticket-workspace-header__role { color: #697386; font-size: 12px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.hd-ticket-workspace-header__back { color: var(--hdt-primary, #675fe8); font-weight: 750; text-decoration: none; }
.hd-ticket-workspace-header__actions { flex-wrap: wrap; justify-content: flex-end; }
.hd-ticket-section-nav {
	background: #fff;
	border: 1px solid #e2e4ef;
	border-radius: 14px;
	display: flex;
	gap: 6px;
	margin: 0 0 16px;
	overflow-x: auto;
	padding: 7px;
	position: sticky;
	top: 8px;
	z-index: 15;
}
.hd-ticket-section-nav a {
	border-radius: 10px;
	color: #4d5562;
	font-size: 13px;
	font-weight: 800;
	padding: 9px 12px;
	text-decoration: none;
	white-space: nowrap;
}
.hd-ticket-section-nav a:hover,
.hd-ticket-section-nav a:focus-visible { background: #efedff; color: #5145cd; }
[data-hd-ticket-section] { scroll-margin-top: 72px; }
.hd-quick-actions__buttons form {
	background: #fafbff;
	border: 1px solid #e3e5ef;
	border-radius: 12px;
	display: grid;
	gap: 7px;
	padding: 11px;
}
.hd-quick-actions__buttons form small { color: #697386; line-height: 1.4; }
.hd-button--attention { background: #fff8e8; border-color: #e8bd55; color: #7b5610; }
.hd-button--danger { background: #fff1f1; border-color: #e4a3a3; color: #9a3030; }
.hd-ticket-action-empty,
.hd-ticket-section-empty {
	background: #f8f9fc;
	border: 1px dashed #ccd1de;
	border-radius: 12px;
	padding: 15px;
}
.hd-ticket-action-empty p,
.hd-ticket-section-empty p { color: #697386; margin: 5px 0 0; }
.hd-ticket-layout aside { align-self: start; position: sticky; top: 70px; }
@media (max-width: 980px) {
	.hd-ticket-layout aside { position: static; }
	.hd-ticket-workspace-header__main { flex-direction: column; }
	.hd-ticket-workspace-header__actions { justify-content: flex-start; }
}
@media (max-width: 640px) {
	.hd-ticket-workspace-header { border-radius: 14px; padding: 16px; }
	.hd-ticket-workspace-header__topline { align-items: flex-start; flex-direction: column; gap: 7px; }
	.hd-ticket-workspace-header__actions { align-items: stretch; display: grid; width: 100%; }
	.hd-ticket-workspace-header__actions .hd-button { justify-content: center; width: 100%; }
	.hd-ticket-section-nav { border-radius: 12px; margin-left: -2px; margin-right: -2px; }
}

/* 0.24.0 — отдельный маркер ожидания активации клиентского доступа. */
.hd-access-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .48rem;border-radius:999px;font-size:.78rem;font-weight:600;line-height:1.35;white-space:normal}
.hd-access-badge--pending{background:#fff4ce;color:#6b4d00;border:1px solid #efd77e}

/* 0.25.0 — финальная адаптивность таблиц и карта интерфейсной приёмки. */
.hd-interface-role-grid,
.hd-interface-route-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.hd-interface-role-card {
	margin: 0;
}

.hd-interface-role-card h2 {
	margin-top: 0;
}

.hd-interface-role-card ul {
	margin-bottom: 0;
	padding-left: 20px;
}

.hd-interface-route {
	background: #fff;
	border: 1px solid var(--hdt-border, #e2e5e9);
	border-radius: 12px;
	color: var(--hdt-text, #111827);
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 16px;
	text-decoration: none;
}

.hd-interface-route:hover,
.hd-interface-route:focus-visible {
	border-color: var(--hdt-primary, #675fe8);
	color: var(--hdt-text, #111827);
}

.hd-interface-route span {
	color: #6b7280;
	font-size: 13px;
}

.hd-interface-breakpoints {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hd-interface-breakpoints h2 {
	grid-column: 1 / -1;
}

.hd-interface-breakpoints > div {
	background: var(--hdt-surface-soft, #f5f6f8);
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 14px;
}

.hd-route-not-found .hd-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

@media (max-width: 1180px) {
	.hd-interface-role-grid,
	.hd-interface-route-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.hd-interface-role-grid,
	.hd-interface-route-grid,
	.hd-interface-breakpoints {
		grid-template-columns: 1fr;
	}

	.hd-table-card {
		background: transparent;
		border: 0;
		box-shadow: none;
		overflow: visible;
	}

	.hd-table-card table[data-hd-responsive-table="1"],
	table[data-hd-responsive-table="1"] {
		border: 0;
		display: block;
		width: 100%;
	}

	.hd-table-card table[data-hd-responsive-table="1"] thead,
	table[data-hd-responsive-table="1"] thead {
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
		height: 1px;
		overflow: hidden;
		position: absolute;
		white-space: nowrap;
		width: 1px;
	}

	.hd-table-card table[data-hd-responsive-table="1"] tbody,
	.hd-table-card table[data-hd-responsive-table="1"] tr,
	table[data-hd-responsive-table="1"] tbody,
	table[data-hd-responsive-table="1"] tr {
		display: block;
		width: 100%;
	}

	.hd-table-card table[data-hd-responsive-table="1"] tbody tr,
	table[data-hd-responsive-table="1"] tbody tr {
		background: #fff;
		border: 1px solid var(--hdt-border, #dcdcde);
		border-radius: 12px;
		box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
		margin: 0 0 12px;
		overflow: hidden;
	}

	.hd-table-card table[data-hd-responsive-table="1"] td,
	table[data-hd-responsive-table="1"] td {
		align-items: flex-start;
		border: 0;
		border-bottom: 1px solid #edf0f2;
		display: grid;
		gap: 12px;
		grid-template-columns: minmax(105px, 38%) minmax(0, 1fr);
		padding: 12px 14px;
		text-align: left;
		width: auto;
	}

	.hd-table-card table[data-hd-responsive-table="1"] td:last-child,
	table[data-hd-responsive-table="1"] td:last-child {
		border-bottom: 0;
	}

	.hd-table-card table[data-hd-responsive-table="1"] td::before,
	table[data-hd-responsive-table="1"] td::before {
		color: #6b7280;
		content: attr(data-label);
		font-size: 12px;
		font-weight: 800;
		letter-spacing: .02em;
		text-transform: uppercase;
	}

	.hd-table-card td[data-hd-action-cell="1"],
	table[data-hd-responsive-table="1"] td[data-hd-action-cell="1"] {
		align-items: stretch;
		grid-template-columns: 1fr;
	}

	.hd-table-card td[data-hd-action-cell="1"]::before,
	table[data-hd-responsive-table="1"] td[data-hd-action-cell="1"]::before {
		display: none;
	}

	.hd-table-card td[data-hd-action-cell="1"] .button,
	.hd-table-card td[data-hd-action-cell="1"] .hd-button,
	table[data-hd-responsive-table="1"] td[data-hd-action-cell="1"] .button,
	table[data-hd-responsive-table="1"] td[data-hd-action-cell="1"] .hd-button {
		box-sizing: border-box;
		justify-content: center;
		text-align: center;
		width: 100%;
	}

	.hd-route-not-found .hd-actions > * {
		box-sizing: border-box;
		justify-content: center;
		text-align: center;
		width: 100%;
	}
}
