.icpl-intra-mypage {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 16px;
	box-sizing: border-box;
}

/* Full-width my page workspace */
.icpl-intra-mypage {
	--icpl-workspace-bg: #f3f6fa;
	--icpl-workspace-card: #fff;
	--icpl-workspace-ink: #172033;
	--icpl-workspace-muted: #667085;
	--icpl-workspace-line: #e1e7ef;
	--icpl-workspace-accent: #176b63;
	background: var(--icpl-workspace-bg);
	box-sizing: border-box;
	color: var(--icpl-workspace-ink);
	left: 50%;
	margin: 0 0 0 -50vw;
	max-width: none;
	min-height: 75vh;
	padding: clamp(20px, 2.5vw, 40px) clamp(16px, 3vw, 56px) 56px;
	position: relative;
	width: 100vw;
}
.icpl-intra-mypage *,
.icpl-intra-mypage *::before,
.icpl-intra-mypage *::after { box-sizing: border-box; }
.icpl-intra-mypage-header {
	align-items: center;
	background: linear-gradient(120deg, #102c32 0%, #176b63 62%, #23897e 100%);
	border-radius: 18px;
	box-shadow: 0 14px 32px rgba(16, 44, 50, .16);
	color: #fff;
	display: flex;
	gap: 28px;
	justify-content: space-between;
	margin: 0 auto clamp(20px, 2vw, 30px);
	max-width: 1880px;
	overflow: hidden;
	padding: clamp(24px, 3vw, 42px);
	position: relative;
}
.icpl-intra-mypage-header::after {
	background: rgba(255,255,255,.06);
	border-radius: 50%;
	content: "";
	height: 300px;
	position: absolute;
	right: -80px;
	top: -170px;
	width: 300px;
}
.icpl-intra-mypage-eyebrow {
	color: #a7e3da;
	display: block;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	margin-bottom: 8px;
}
.icpl-intra-mypage-header h1 {
	color: #fff;
	font-size: clamp(23px, 2.2vw, 36px);
	letter-spacing: -.02em;
	line-height: 1.3;
	margin: 0 0 8px;
}
.icpl-intra-mypage-header p { color: #d8ebe8; font-size: 14px; margin: 0; }
.icpl-intra-mypage-user {
	align-items: center;
	background: rgba(255,255,255,.11);
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 14px;
	display: flex;
	flex: 0 1 auto;
	gap: 12px;
	min-width: 250px;
	padding: 12px 15px;
	position: relative;
	z-index: 1;
}
.icpl-intra-mypage-user img,
.icpl-intra-mypage-user-placeholder {
	align-items: center;
	background: #fff;
	border: 2px solid rgba(255,255,255,.55);
	border-radius: 50%;
	color: var(--icpl-workspace-accent);
	display: flex;
	font-size: 18px;
	font-weight: 800;
	height: 46px;
	justify-content: center;
	object-fit: cover;
	width: 46px;
}
.icpl-intra-mypage-user > span:last-child { display: grid; min-width: 0; }
.icpl-intra-mypage-user strong { color: #fff; font-size: 14px; }
.icpl-intra-mypage-user small { color: #cce2df; font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.icpl-intra-mypage > .icpl-intra-mypage-notice,
.icpl-intra-mypage > .icpl-intra-tabs { margin-left: auto; margin-right: auto; max-width: 1880px; }
.icpl-intra-tabs {
	display: grid;
	gap: clamp(20px, 2vw, 32px);
	grid-template-columns: minmax(210px, 250px) minmax(0, 1fr);
	margin-top: 0;
}
.icpl-intra-tab-list {
	align-self: start;
	background: var(--icpl-workspace-card);
	border: 1px solid var(--icpl-workspace-line);
	border-radius: 14px;
	box-shadow: 0 4px 18px rgba(18, 32, 51, .05);
	display: flex;
	flex-direction: column;
	gap: 5px;
	margin: 0;
	padding: 9px;
	position: sticky;
	top: 24px;
}
body.admin-bar .icpl-intra-tab-list { top: 56px; }
.icpl-intra-tab-list label {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 9px;
	color: #344054;
	display: grid;
	font-size: 14px;
	gap: 11px;
	grid-template-columns: 34px minmax(0, 1fr) auto;
	line-height: 1.3;
	min-height: 58px;
	padding: 9px 11px;
	transition: background .15s ease, color .15s ease, transform .15s ease;
}
.icpl-intra-tab-list label::before {
	align-items: center;
	background: #f0f3f6;
	border-radius: 8px;
	content: "\2022";
	display: flex;
	font-size: 20px;
	height: 34px;
	justify-content: center;
	width: 34px;
}
.icpl-intra-tab-list label[for="icpl_intra_tab_profile"]::before { content: "\263A"; }
.icpl-intra-tab-list label[for="icpl_intra_tab_devices"]::before { content: "\25A3"; }
.icpl-intra-tab-list label[for="icpl_intra_tab_related"]::before { content: "\260D"; }
.icpl-intra-tab-list label[for="icpl_intra_tab_attendance"]::before { content: "\25F7"; }
.icpl-intra-tab-list label[for="icpl_intra_tab_sites"]::before { content: "\2197"; }
.icpl-intra-tab-list label[for="icpl_intra_tab_ledgers"]::before { content: "\25A6"; }
.icpl-intra-tab-list label[for="icpl_intra_tab_tasks"]::before { content: "\2713"; }
.icpl-intra-tab-list label[for="icpl_intra_tab_approvals"]::before { content: "\25CE"; }
.icpl-intra-tab-list label:hover { background: #f4f8f7; color: var(--icpl-workspace-accent); transform: translateX(2px); }
.icpl-intra-tab-list label > span { min-width: 0; }
.icpl-intra-tab-list label small { color: #98a2b3; display: block; font-size: 10px; font-weight: 500; margin-top: 3px; }
.icpl-intra-tab-badge { grid-column: 3; grid-row: 1; }
#icpl_intra_tab_profile:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_profile"],
#icpl_intra_tab_devices:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_devices"],
#icpl_intra_tab_related:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_related"],
#icpl_intra_tab_attendance:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_attendance"],
#icpl_intra_tab_sites:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_sites"],
#icpl_intra_tab_ledgers:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_ledgers"],
#icpl_intra_tab_tasks:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_tasks"],
#icpl_intra_tab_approvals:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_approvals"] {
	background: #eaf5f3;
	color: #105e57;
	margin: 0;
	padding: 9px 11px;
}
#icpl_intra_tab_profile:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_profile"]::before,
#icpl_intra_tab_devices:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_devices"]::before,
#icpl_intra_tab_related:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_related"]::before,
#icpl_intra_tab_attendance:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_attendance"]::before,
#icpl_intra_tab_sites:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_sites"]::before,
#icpl_intra_tab_ledgers:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_ledgers"]::before,
#icpl_intra_tab_tasks:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_tasks"]::before,
#icpl_intra_tab_approvals:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_approvals"]::before { background: var(--icpl-workspace-accent); color: #fff; }
.icpl-intra-tab-panel {
	background: var(--icpl-workspace-card);
	border: 1px solid var(--icpl-workspace-line);
	border-radius: 14px;
	box-shadow: 0 4px 18px rgba(18, 32, 51, .05);
	grid-column: 2;
	min-width: 0;
	padding: clamp(18px, 2.4vw, 36px);
}
.icpl-intra-tab-panel.icpl-intra-tab-ledgers { padding: 0; }
.icpl-intra-mypage-summary {
	background: #f7faf9;
	border: 1px solid #e0ebe9;
	border-radius: 12px;
	margin: 0 0 24px;
	padding: 20px;
}
.icpl-intra-mypage-profile { border-collapse: separate; border-spacing: 0; border: 1px solid var(--icpl-workspace-line); border-radius: 10px; overflow: hidden; }
.icpl-intra-mypage-profile th,
.icpl-intra-mypage-profile td { border: 0; border-bottom: 1px solid var(--icpl-workspace-line); padding: 13px 16px; }
.icpl-intra-mypage-profile tr:last-child th,
.icpl-intra-mypage-profile tr:last-child td { border-bottom: 0; }
.icpl-intra-mypage-profile th { background: #f8fafc; color: #475467; }
.icpl-intra-device-item,
.icpl-intra-admin-request-block { border-color: var(--icpl-workspace-line); border-radius: 10px; }

@media (max-width: 900px) {
	.icpl-intra-mypage-header { align-items: flex-start; flex-direction: column; }
	.icpl-intra-mypage-user { min-width: 0; width: 100%; }
	.icpl-intra-tabs { display: block; }
	.icpl-intra-tab-list {
		display: flex;
		flex-direction: row;
		margin: 0 0 16px;
		overflow-x: auto;
		padding: 7px;
		position: static;
		scrollbar-width: thin;
	}
	.icpl-intra-tab-list label,
	#icpl_intra_tab_profile:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_profile"],
	#icpl_intra_tab_devices:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_devices"],
	#icpl_intra_tab_related:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_related"],
	#icpl_intra_tab_attendance:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_attendance"],
	#icpl_intra_tab_sites:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_sites"],
	#icpl_intra_tab_ledgers:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_ledgers"],
	#icpl_intra_tab_tasks:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_tasks"],
	#icpl_intra_tab_approvals:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_approvals"] {
		flex: 0 0 auto;
		grid-template-columns: 30px auto auto;
		min-height: 48px;
		padding: 7px 10px;
		white-space: nowrap;
	}
	.icpl-intra-tab-list label::before { height: 30px; width: 30px; }
	.icpl-intra-tab-list label small { display: none; }
	.icpl-intra-tab-panel { padding: 20px; }
}
@media (max-width: 600px) {
	.icpl-intra-mypage { padding: 12px 10px 32px; }
	.icpl-intra-mypage-header { border-radius: 12px; padding: 22px 18px; }
	.icpl-intra-mypage-header p { line-height: 1.65; }
	.icpl-intra-mypage-user small { max-width: 210px; }
	.icpl-intra-tab-panel { border-radius: 10px; padding: 16px 12px; }
	.icpl-intra-mypage-summary { padding: 15px; }
	.icpl-intra-mypage-profile,
	.icpl-intra-mypage-profile tbody,
	.icpl-intra-mypage-profile tr,
	.icpl-intra-mypage-profile th,
	.icpl-intra-mypage-profile td { display: block; width: 100%; }
	.icpl-intra-mypage-profile th { border-bottom: 0; padding: 10px 12px 3px; }
	.icpl-intra-mypage-profile td { padding: 3px 12px 11px; }
	.icpl-intra-edit-value { max-width: none; }
}

/* CSV / API-ready ledger tools */
.icpl-intra-ledger-csv-tools {
	margin: 0 0 18px;
	border: 1px solid var(--icpl-border, #dfe3e8);
	border-radius: 10px;
	background: #fff;
}
.icpl-intra-ledger-csv-tools > summary {
	cursor: pointer;
	padding: 12px 16px;
	font-weight: 700;
}
.icpl-intra-ledger-csv-tools-body {
	padding: 0 16px 16px;
}
.icpl-intra-ledger-csv-links,
.icpl-intra-ledger-csv-import {
	display: flex;
	align-items: end;
	gap: 8px;
	flex-wrap: wrap;
}
.icpl-intra-ledger-csv-import {
	margin: 14px 0;
	padding: 14px;
	background: #f5f7f9;
	border-radius: 8px;
}
.icpl-intra-ledger-csv-import label {
	display: grid;
	gap: 5px;
}
.icpl-intra-ledger-import-preview {
	margin-top: 16px;
	padding-top: 12px;
	border-top: 1px solid #dfe3e8;
}
.icpl-intra-ledger-import-errors {
	margin: 12px 0;
	padding: 10px 14px;
	border-left: 4px solid #c62828;
	background: #fff0f0;
}
.icpl-intra-ledger-row-errors {
	margin: 0;
	color: #b42318;
}
.icpl-intra-ledger-import-table td {
	vertical-align: top;
}


/* Ledger category chips. Names navigate; descriptions belong to the destination. */
body .icpl-intra-ledger-category-chip {
	display: inline-flex; align-items: center; min-height: 36px; box-sizing: border-box;
	padding: 5px 12px; border: 1px solid #d9e2ea; border-radius: 999px;
	background: #fff; color: #334155; font-size: 13px; font-weight: 600;
	text-decoration: none; overflow-wrap: anywhere;
}
body .icpl-intra-ledger-category-chip:hover { background: #eef4ff; border-color: #315da8; color: #24539a; }
body .icpl-intra-ledger-category-chip:focus-visible { outline: 3px solid #315da8; outline-offset: 3px; }
body .icpl-intra-ledger-tree .icpl-intra-ledger-child-entrances { border: 0; margin: 0; padding: 0; }
body .icpl-intra-ledger-tree .icpl-intra-ledger-child-label { margin: 0 0 8px; color: #64748b; font-size: 12px; font-weight: 400; }
/* Ledger usability refresh */
.icpl-intra-ledger-count {
	color: #475569 !important;
	font-size: 13px;
	margin-top: 8px !important;
}
.icpl-intra-ledger-count strong {
	color: #0f172a;
	font-size: 20px;
	margin-right: 3px;
}
.icpl-intra-ledger-search {
	background: #f8fafc;
	border: 1px solid #d9e2ea;
	border-radius: 10px;
	padding: 12px;
}
.icpl-intra-ledger-search label {
	display: grid;
	gap: 4px;
	margin: 0;
}
.icpl-intra-ledger-search label > span {
	color: #475569;
	font-size: 11px;
	font-weight: 700;
}
.icpl-intra-ledger-search-query {
	flex: 1 1 320px;
}
.icpl-intra-ledger-search-sort {
	flex: 0 1 230px;
}
.icpl-intra-ledger-search button,
.icpl-intra-ledger-search > a {
	align-self: end;
	min-height: 40px;
}
.icpl-intra-ledger-search input[type="search"] {
	min-width: 0;
	width: 100%;
}
.icpl-intra-ledger-search select {
	width: 100%;
}
.icpl-intra-ledger-table-wrap {
	background: #fff;
	border: 1px solid #d9e2ea;
	border-radius: 10px;
	box-shadow: 0 2px 8px rgba(15, 23, 42, .04);
}
.icpl-intra-ledger-table {
	border: 0;
	margin: 0;
}
.icpl-intra-ledger-table thead th {
	background: #eef3f7;
	border-bottom: 1px solid #cbd5e1;
	color: #334155;
	position: sticky;
	top: 0;
	white-space: nowrap;
	z-index: 2;
}
.icpl-intra-ledger-table tbody tr {
	transition: background .12s ease;
}
.icpl-intra-ledger-table tbody tr:hover td {
	background: #f8fbfc;
}
.icpl-intra-ledger-table td {
	max-width: 280px;
	overflow-wrap: anywhere;
}
.icpl-intra-ledger-table th:first-child,
.icpl-intra-ledger-table td:first-child {
	min-width: 180px;
}
.icpl-intra-ledger-table td:first-child a {
	color: #0f6f68;
}
.icpl-intra-ledger-row-actions a {
	display: inline-block;
	font-weight: 600;
	padding: 3px 0;
}
.icpl-intra-ledger-empty {
	color: #64748b;
	padding: 42px 20px !important;
	text-align: center !important;
}
.icpl-intra-ledger-value.is-select {
	background: #e8f1f5;
	border-radius: 999px;
	color: #334155;
	display: inline-flex;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.25;
	padding: 4px 9px;
	white-space: nowrap;
}
.icpl-intra-ledger-value.value-in_use,
.icpl-intra-ledger-value.value-active {
	background: #dcfce7;
	color: #166534;
}
.icpl-intra-ledger-value.value-spare,
.icpl-intra-ledger-value.value-stored,
.icpl-intra-ledger-value.value-inactive {
	background: #f1f5f9;
	color: #475569;
}
.icpl-intra-ledger-value.value-setup,
.icpl-intra-ledger-value.value-repair,
.icpl-intra-ledger-value.value-planned {
	background: #fef3c7;
	color: #92400e;
}
.icpl-intra-ledger-value.value-fault,
.icpl-intra-ledger-value.value-lost,
.icpl-intra-ledger-value.value-disposed {
	background: #fee2e2;
	color: #991b1b;
}
.icpl-intra-ledger-form-card,
.icpl-intra-ledger-detail,
.icpl-intra-card.icpl-intra-wide-card {
	max-width: 1240px;
}
.icpl-intra-ledger-form-intro {
	border-bottom: 1px solid #e2e8f0;
	margin-bottom: 18px;
	padding-bottom: 14px;
}
.icpl-intra-ledger-form-intro h2 {
	margin: 0 0 5px;
}
.icpl-intra-ledger-form-intro p {
	color: #64748b;
	margin: 0;
}
.icpl-intra-ledger-record-form {
	display: grid;
	gap: 16px;
}
.icpl-intra-ledger-form-section {
	background: #fbfcfd;
	border: 1px solid #d9e2ea;
	border-radius: 10px;
	margin: 0;
	padding: 16px;
}
.icpl-intra-ledger-form-section legend {
	background: #fff;
	border: 1px solid #d9e2ea;
	border-radius: 999px;
	color: #0f172a;
	font-size: 14px;
	font-weight: 700;
	padding: 5px 12px;
}
.icpl-intra-ledger-section-description {
	color: #64748b;
	font-size: 13px;
	margin: 0 0 14px;
}
.icpl-intra-ledger-form-field {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 10px 11px;
}
.icpl-intra-ledger-form-field:focus-within {
	border-color: #0f6f68;
	box-shadow: 0 0 0 2px rgba(15, 111, 104, .12);
}
.icpl-intra-ledger-form-field > span:first-child {
	color: #334155;
	font-size: 13px;
}
.icpl-intra-ledger-form-field input:not([type="checkbox"]),
.icpl-intra-ledger-form-field select,
.icpl-intra-ledger-form-field textarea {
	min-height: 40px;
}
.icpl-intra-ledger-checkbox {
	align-items: center;
	display: flex;
	gap: 8px;
	min-height: 40px;
}
.icpl-intra-ledger-form-actions {
	background: rgba(255, 255, 255, .96);
	border-top: 1px solid #d9e2ea;
	bottom: 0;
	margin: 0 -4px -4px;
	padding: 12px 4px 4px;
	position: sticky;
	z-index: 5;
}
.icpl-intra-ledger-detail-section {
	border: 1px solid #d9e2ea;
	border-radius: 10px;
	margin: 0 0 16px;
	overflow: hidden;
}
.icpl-intra-ledger-detail-section h3 {
	background: #eef3f7;
	border-bottom: 1px solid #d9e2ea;
	color: #0f172a;
	font-size: 15px;
	margin: 0;
	padding: 11px 14px;
}
.icpl-intra-ledger-detail-section .icpl-intra-ledger-detail-list {
	margin: 0;
}
.icpl-intra-ledger-detail-section .icpl-intra-ledger-detail-list dt:last-of-type,
.icpl-intra-ledger-detail-section .icpl-intra-ledger-detail-list dd:last-of-type {
	border-bottom: 0;
}

@media (min-width: 1180px) {
	.icpl-intra-ledger-form-grid {
		grid-template-columns: repeat(3, minmax(200px, 1fr));
	}
	.icpl-intra-ledger-form-field.is-wide {
		grid-column: 1 / -1;
	}
}


/* Production-management-aligned ledger workspace */
.icpl-intra-ledger-workspace,
.icpl-intra-tab-ledgers {
	--icpl-ledger-ink: #172033;
	--icpl-ledger-muted: #667085;
	--icpl-ledger-line: #d8dee8;
	--icpl-ledger-accent: #2457d6;
	--icpl-ledger-accent-soft: #eef3ff;
	background: #f3f5f7;
	box-sizing: border-box;
	color: var(--icpl-ledger-ink);
	margin: 0;
	max-width: none;
	min-height: 72vh;
	padding: 14px 18px 36px;
	width: 100%;
}
.icpl-intra-ledger-workspace *,
.icpl-intra-tab-ledgers * {
	box-sizing: border-box;
}
.icpl-intra-admin-wrap .icpl-intra-ledger-workspace {
	width: 100%;
}
.icpl-intra-ledger-workspace > h1 {
	font-size: clamp(21px, 2.4vw, 28px);
	line-height: 1.25;
	margin: 2px 0 14px;
}
.icpl-intra-ledger-heading {
	margin: 0 0 14px;
}
.icpl-intra-ledger-heading h1,
.icpl-intra-ledger-heading h2 {
	font-size: clamp(21px, 2.4vw, 28px);
	line-height: 1.25;
	margin: 2px 0 5px;
}
.icpl-intra-ledger-heading p {
	color: var(--icpl-ledger-muted);
}
.icpl-intra-ledger-dashboard {
	background: #fff;
	border: 1px solid var(--icpl-ledger-line);
	display: grid;
	gap: 0;
	grid-template-columns: 1fr;
}
.icpl-intra-ledger-card {
	align-items: center;
	border: 0;
	border-bottom: 1px solid #e3e7ed;
	border-radius: 0;
	box-shadow: none;
	display: grid;
	gap: 12px;
	grid-template-columns: 30px minmax(0, 1fr);
	padding: 12px 15px;
	transform: none;
}
.icpl-intra-ledger-card:last-child {
	border-bottom: 0;
}
.icpl-intra-ledger-card:hover,
.icpl-intra-ledger-card:focus {
	background: #f5f8fd;
	border-color: #e3e7ed;
	box-shadow: none;
	transform: none;
}
.icpl-intra-ledger-card > .dashicons {
	color: var(--icpl-ledger-accent);
	font-size: 24px;
	height: 24px;
	width: 24px;
}
.icpl-intra-ledger-card > span:last-child {
	align-items: center;
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(190px, 280px) minmax(260px, 1fr);
}
.icpl-intra-ledger-card strong {
	font-size: 15px;
}
.icpl-intra-ledger-card small {
	margin: 0;
}
.icpl-intra-ledger-search {
	border-color: var(--icpl-ledger-line);
	border-radius: 4px;
	margin-bottom: 10px;
	padding: 8px 10px;
}
.icpl-intra-ledger-table-wrap {
	border-color: var(--icpl-ledger-line);
	border-radius: 4px;
	box-shadow: none;
}
.icpl-intra-ledger-form-card,
.icpl-intra-ledger-detail,
.icpl-intra-card.icpl-intra-wide-card.icpl-intra-ledger-form-card,
.icpl-intra-card.icpl-intra-wide-card.icpl-intra-ledger-detail {
	margin: 0;
	max-width: none;
	width: 100%;
}
.icpl-intra-ledger-form-card,
.icpl-intra-ledger-detail {
	border-color: var(--icpl-ledger-line);
	border-radius: 4px;
	padding: 14px;
}
.icpl-intra-ledger-form-section {
	background: #fff;
	border-color: var(--icpl-ledger-line);
	border-radius: 4px;
	padding: 14px;
}
.icpl-intra-ledger-form-section legend {
	border: 0;
	border-radius: 0;
	color: var(--icpl-ledger-ink);
	font-size: 14px;
	padding: 0 4px;
}
.icpl-intra-ledger-form-field {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
}
.icpl-intra-ledger-form-field:focus-within {
	border-color: transparent;
	box-shadow: none;
}
.icpl-intra-ledger-form-field input:not([type="checkbox"]):focus,
.icpl-intra-ledger-form-field select:focus,
.icpl-intra-ledger-form-field textarea:focus {
	border-color: var(--icpl-ledger-accent);
	box-shadow: 0 0 0 1px var(--icpl-ledger-accent);
	outline: 0;
}
.icpl-intra-ledger-detail-section {
	border-radius: 4px;
}
.icpl-intra-ledger-detail-section h3 {
	background: #e9edf2;
}
@media (min-width: 1100px) {
	.icpl-intra-ledger-form-grid {
		grid-template-columns: repeat(3, minmax(190px, 1fr));
	}
}
@media (min-width: 1500px) {
	.icpl-intra-ledger-form-grid {
		grid-template-columns: repeat(4, minmax(190px, 1fr));
	}
}
@media (max-width: 720px) {
	.icpl-intra-ledger-workspace,
	.icpl-intra-tab-ledgers {
		min-height: 0;
		padding: 12px;
	}
	.icpl-intra-ledger-card > span:last-child {
		display: block;
	}
.icpl-intra-ledger-card small {
		margin-top: 4px;
	}
}

/* X-style portal profile: keep the mypage inside the shared center column. */
body.icpl-has-portal-shell .icpl-intra-mypage {
	position: relative;
	left: auto;
	width: 100%;
	max-width: none;
	min-height: 72vh;
	margin: 0;
	padding: 0 0 28px;
	background: transparent;
}
body.icpl-has-portal-shell .icpl-intra-mypage .icpl-intra-tabs {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0;
	margin: 0;
}
body.icpl-has-portal-shell .icpl-intra-mypage .icpl-intra-tab-list {
	position: sticky;
	top: 0;
	z-index: 4;
	align-self: auto;
	display: flex;
	flex-direction: row;
	gap: 0;
	margin: 0;
	padding: 0 8px;
	border: 0;
	border-bottom: 1px solid #e5e7eb;
	border-radius: 0;
	background: rgba(255, 255, 255, .96);
	backdrop-filter: blur(12px);
	overflow-x: auto;
	overscroll-behavior-x: contain;
}
body.icpl-has-portal-shell .icpl-intra-mypage .icpl-intra-tab-list label {
	position: relative;
	display: flex;
	flex: 1 0 auto;
	align-items: center;
	justify-content: center;
	min-width: 74px;
	min-height: 54px;
	padding: 8px 14px;
	border: 0;
	border-radius: 0;
	background: transparent;
	text-align: center;
	white-space: nowrap;
}
body.icpl-has-portal-shell .icpl-intra-mypage .icpl-intra-tab-list label::before { display: none; }
body.icpl-has-portal-shell .icpl-intra-mypage .icpl-intra-tab-list label small { display: none; }
body.icpl-has-portal-shell #icpl_intra_tab_profile:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_profile"],
body.icpl-has-portal-shell #icpl_intra_tab_devices:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_devices"],
body.icpl-has-portal-shell #icpl_intra_tab_related:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_related"],
body.icpl-has-portal-shell #icpl_intra_tab_attendance:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_attendance"],
body.icpl-has-portal-shell #icpl_intra_tab_sites:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_sites"],
body.icpl-has-portal-shell #icpl_intra_tab_tasks:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_tasks"],
body.icpl-has-portal-shell #icpl_intra_tab_approvals:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_approvals"] {
	margin: 0;
	padding: 8px 14px;
	background: transparent;
	color: #111827;
	font-weight: 700;
}
body.icpl-has-portal-shell #icpl_intra_tab_profile:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_profile"]::after,
body.icpl-has-portal-shell #icpl_intra_tab_devices:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_devices"]::after,
body.icpl-has-portal-shell #icpl_intra_tab_related:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_related"]::after,
body.icpl-has-portal-shell #icpl_intra_tab_attendance:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_attendance"]::after,
body.icpl-has-portal-shell #icpl_intra_tab_sites:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_sites"]::after,
body.icpl-has-portal-shell #icpl_intra_tab_tasks:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_tasks"]::after,
body.icpl-has-portal-shell #icpl_intra_tab_approvals:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_approvals"]::after {
	position: absolute;
	right: 18%;
	bottom: 0;
	left: 18%;
	height: 4px;
	border-radius: 999px;
	background: #1d9bf0;
	content: "";
}
body.icpl-has-portal-shell .icpl-intra-mypage .icpl-intra-tab-panel {
	grid-column: 1;
	min-width: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: #fff;
}
body.icpl-has-portal-shell #icpl_intra_tab_profile:checked ~ .icpl-intra-tab-profile {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0;
}
body.icpl-has-portal-shell .icpl-intra-tab-profile .icpl-intra-mypage-summary {
	align-items: center;
	flex-direction: row;
	gap: 18px;
	margin: 0;
	padding: 20px;
	border-bottom: 1px solid #e5e7eb;
	background: #fff;
	text-align: left;
}
body.icpl-has-portal-shell .icpl-intra-tab-profile .icpl-intra-mypage-profile,
body.icpl-has-portal-shell .icpl-intra-tab-profile .icpl-intra-profile-edit-form,
body.icpl-has-portal-shell .icpl-intra-tab-profile .icpl-intra-mypage-pending {
	grid-column: 1;
	width: 100%;
	margin: 0;
	padding: 20px;
	border: 0;
	border-bottom: 1px solid #e5e7eb;
	border-radius: 0;
	background: #fff;
}
body.icpl-has-portal-shell .icpl-intra-tab-profile .icpl-intra-profile-edit-form { padding: 0; }

@media (max-width: 600px) {
	body.icpl-has-portal-shell .icpl-intra-mypage .icpl-intra-tab-list label { min-width: 68px; padding-inline: 10px; }
	body.icpl-has-portal-shell .icpl-intra-tab-profile .icpl-intra-mypage-summary { padding: 18px 16px; }
	body.icpl-has-portal-shell .icpl-intra-tab-profile .icpl-intra-mypage-profile,
	body.icpl-has-portal-shell .icpl-intra-tab-profile .icpl-intra-profile-edit-form,
	body.icpl-has-portal-shell .icpl-intra-tab-profile .icpl-intra-mypage-pending { padding: 16px; }
}

/* Dependency-first relation editor */
.icpl-intra-ledger-relations-section {
	grid-column: 1 / -1;
}

.icpl-intra-ledger-relation-step {
	align-items: center;
	background: var(--icpl-ledger-accent, #2457d6);
	border-radius: 50%;
	color: #fff;
	display: inline-flex;
	flex: 0 0 26px;
	font-size: 13px;
	font-weight: 700;
	height: 26px;
	justify-content: center;
	width: 26px;
}

.icpl-intra-ledger-relation-current,
.icpl-intra-ledger-relation-picker-heading {
	align-items: center;
	display: flex;
	gap: 10px;
}

.icpl-intra-ledger-relation-current {
	background: #eef3ff;
	border: 1px solid #cbd8ff;
	margin: 12px 0 18px;
	padding: 12px 14px;
}

.icpl-intra-ledger-relation-current div,
.icpl-intra-ledger-relation-picker-heading div,
.icpl-intra-ledger-relation-candidate > span:not(.icpl-intra-ledger-relation-media-icon) {
	display: grid;
	gap: 2px;
}

.icpl-intra-ledger-relation-current span:not(.icpl-intra-ledger-relation-step),
.icpl-intra-ledger-relation-current small,
.icpl-intra-ledger-relation-picker-heading small,
.icpl-intra-ledger-relation-candidate small {
	color: var(--icpl-ledger-muted, #667085);
	font-size: 12px;
}

.icpl-intra-ledger-relation-current strong {
	font-size: 17px;
}

.icpl-intra-ledger-relation-picker {
	border-top: 1px solid var(--icpl-ledger-line, #d8dee8);
	margin-top: 18px;
	padding-top: 16px;
}

.icpl-intra-ledger-relation-picker-heading strong {
	font-size: 16px;
}

.icpl-intra-ledger-relation-picker-tools {
	display: grid;
	gap: 10px;
	grid-template-columns: minmax(240px, 2fr) minmax(180px, 1fr);
	margin: 12px 0 10px;
}

.icpl-intra-ledger-relation-picker-tools label,
.icpl-intra-ledger-relation-options-grid label {
	display: grid;
	font-weight: 600;
	gap: 4px;
}

.icpl-intra-ledger-relation-picker-tools label > span,
.icpl-intra-ledger-relation-options-grid label > span {
	font-size: 12px;
}

.icpl-intra-ledger-relation-picker-tools input,
.icpl-intra-ledger-relation-picker-tools select,
.icpl-intra-ledger-relation-options-grid input,
.icpl-intra-ledger-relation-options-grid select,
.icpl-intra-ledger-relation-options-grid textarea {
	width: 100%;
}

.icpl-intra-ledger-relation-candidates {
	border: 1px solid var(--icpl-ledger-line, #d8dee8);
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-height: 360px;
	overflow: auto;
}

.icpl-intra-ledger-relation-candidate {
	align-items: center;
	background: #fff;
	border-bottom: 1px solid #edf0f4;
	cursor: pointer;
	display: grid;
	gap: 9px;
	grid-template-columns: auto 28px minmax(0, 1fr) auto;
	margin: 0;
	min-width: 0;
	padding: 9px 11px;
}

.icpl-intra-ledger-relation-candidate[hidden] {
	display: none;
}

/* WEB service editor: input-first workspace */
.icpl-intra-ledger-form-card.is-services-form-card {
	background: transparent;
	border: 0;
	padding: 0;
}

.is-services-form-card .icpl-intra-ledger-form-intro {
	background: #fff;
	border: 1px solid var(--icpl-ledger-line, #d8dee8);
	border-radius: 6px;
	margin: 0 0 12px;
	padding: 15px 17px;
}

.icpl-intra-service-edit-heading {
	align-items: center;
	display: flex;
	gap: 10px;
	line-height: 1.25;
}

.icpl-intra-service-edit-heading .icpl-intra-ledger-platform-favicon,
.icpl-intra-service-edit-heading .icpl-intra-ledger-platform-favicon img,
.icpl-intra-service-edit-heading .icpl-intra-ledger-favicon-fallback {
	height: 1.3em;
	width: 1.3em;
}

.icpl-intra-service-edit-heading .icpl-intra-ledger-platform-favicon {
	flex-basis: 1.3em;
}

.icpl-intra-service-edit-heading .icpl-intra-ledger-favicon-fallback {
	font-size: 1.3em;
}

.icpl-intra-service-edit-heading-name {
	min-width: 0;
}

.icpl-intra-service-edit-heading-action {
	color: #64748b;
	font-size: .72em;
	font-weight: 600;
	white-space: nowrap;
}

.icpl-intra-ledger-record-form.is-services {
	gap: 10px;
}

.icpl-intra-service-edit-layout {
	display: grid;
	gap: 14px;
	grid-template-columns: minmax(0, 1fr);
	min-width: 0;
}

.icpl-intra-service-edit-nav {
	align-items: stretch;
	background: #fff;
	border: 1px solid var(--icpl-ledger-line, #d8dee8);
	border-radius: 6px;
	display: flex;
	gap: 4px;
	overflow-x: auto;
	padding: 7px;
	position: sticky;
	top: 42px;
	z-index: 4;
}

.icpl-intra-service-edit-nav-heading {
	display: none;
}

.icpl-intra-service-edit-nav button {
	align-items: center;
	background: transparent;
	border: 1px solid transparent;
	border-radius: 5px;
	color: #334155;
	cursor: pointer;
	display: grid;
	flex: 0 0 160px;
	gap: 8px;
	grid-template-columns: 24px minmax(0, 1fr);
	min-height: 48px;
	padding: 7px 9px;
	text-align: left;
}

.icpl-intra-service-edit-nav button:hover,
.icpl-intra-service-edit-nav button:focus-visible {
	background: #f4f7fb;
	border-color: #cad5e3;
	outline: 0;
}

.icpl-intra-service-edit-nav button.is-active {
	background: #eaf1ff;
	border-color: #9db7ee;
	color: #173f93;
}

.icpl-intra-service-edit-nav button.has-missing small {
	color: #b42318;
}

.icpl-intra-service-edit-nav button.is-complete small {
	color: #137333;
}

.icpl-intra-service-edit-nav button > .dashicons {
	font-size: 20px;
	height: 20px;
	width: 20px;
}

.icpl-intra-service-edit-nav button > span:last-child {
	display: grid;
	gap: 1px;
	min-width: 0;
}

.icpl-intra-service-edit-nav button strong {
	font-size: 12px;
	line-height: 1.35;
}

.icpl-intra-service-edit-nav button small {
	color: #64748b;
	font-size: 10px;
	line-height: 1.35;
}

.icpl-intra-service-edit-content {
	display: grid;
	gap: 14px;
	min-width: 0;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-section {
	background: #fff;
	border: 1px solid var(--icpl-ledger-line, #d8dee8);
	border-radius: 6px;
	padding: 15px 16px 17px;
	scroll-margin-top: 118px;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-section legend {
	align-items: center;
	background: #fff;
	color: #172033;
	display: inline-flex;
	font-size: 16px;
	font-weight: 700;
	gap: 7px;
	padding: 0 7px;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-section legend .dashicons {
	color: var(--icpl-ledger-accent, #2457d6);
	font-size: 22px;
	height: 22px;
	width: 22px;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-section-description {
	border-bottom: 1px solid #e7ebf0;
	color: #596579;
	font-size: 12px;
	margin: 0 0 14px;
	padding: 0 0 10px;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-grid {
	align-items: start;
	display: grid;
	gap: 14px 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field {
	align-content: start;
	align-self: start;
	background: transparent;
	border: 0;
	border-radius: 0;
	display: grid;
	gap: 6px;
	min-width: 0;
	padding: 0;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field:focus-within {
	box-shadow: none;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field > span:first-child {
	color: #263247;
	font-size: 12px;
	font-weight: 700;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field input:not([type="checkbox"]):not([type="radio"]),
.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field select,
.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field textarea {
	border-color: #b8c3d1;
	border-radius: 5px;
	min-height: 42px;
	padding: 8px 10px;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field textarea {
	min-height: 82px;
	resize: vertical;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field small {
	font-size: 11px;
	line-height: 1.45;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field.is-wide {
	grid-column: auto;
}

.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field[data-icpl-ledger-field-id="record_title"],
.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field[data-icpl-ledger-field-id="resource_category"],
.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field[data-icpl-ledger-field-id="resource_subcategory"],
.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field[data-icpl-ledger-field-id="resource_detail"],
.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field[data-icpl-ledger-field-id="managed_organization"],
.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field[data-icpl-ledger-field-id="service_purposes"],
.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field[data-icpl-ledger-field-id="access_method"],
.icpl-intra-ledger-record-form.is-services [data-icpl-form-section-id="notes"] .icpl-intra-ledger-form-field[data-icpl-ledger-field-id="notes"] {
	grid-column: 1 / -1;
}

.is-service-classification-step > span:first-child {
	align-items: center;
	display: flex;
	gap: 6px;
}

.icpl-intra-service-classification-step-number {
	align-items: center;
	background: var(--icpl-ledger-accent, #2457d6);
	border-radius: 50%;
	color: #fff;
	display: inline-flex;
	font-size: 10px;
	height: 20px;
	justify-content: center;
	line-height: 1;
	width: 20px;
}

.is-service-classification-step[hidden] {
	display: none;
}

.icpl-intra-service-classification-choices {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

[data-icpl-service-classification-group="category"] .icpl-intra-service-classification-choices {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-width: 900px;
}

[data-icpl-service-classification-group="category"] .icpl-intra-service-classification-choices label > span {
	border-radius: 8px;
	font-size: 14px;
	min-height: 56px;
	width: 100%;
}

.icpl-intra-service-classification-choices label {
	margin: 0;
}

.icpl-intra-service-classification-choices label[hidden] {
	display: none;
}

.icpl-intra-service-classification-choices input {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px !important;
	max-width: 1px;
	min-height: 1px !important;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px !important;
}

.icpl-intra-service-classification-choices label > span {
	align-items: center;
	background: #f8fafc;
	border: 1px solid #c3cedc;
	border-radius: 999px;
	color: #334155;
	cursor: pointer;
	display: inline-flex;
	font-size: 13px;
	font-weight: 600;
	justify-content: center;
	line-height: 1.35;
	min-height: 38px;
	padding: 8px 14px;
	transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease, color .15s ease;
}

.icpl-intra-service-classification-choices label > span:hover {
	background: #f0f5ff;
	border-color: #8da9df;
}

.icpl-intra-service-classification-choices input:checked + span {
	background: var(--icpl-ledger-accent, #2457d6);
	border-color: var(--icpl-ledger-accent, #2457d6);
	box-shadow: 0 3px 9px rgba(36, 87, 214, .18);
	color: #fff;
}

.icpl-intra-service-classification-choices input:focus-visible + span {
	box-shadow: 0 0 0 3px rgba(36, 87, 214, .22);
	outline: 1px solid var(--icpl-ledger-accent, #2457d6);
}

.icpl-intra-service-classification-path {
	color: #173f93;
	font-weight: 700;
}

.icpl-intra-ledger-choice-grid [data-icpl-service-purpose][hidden] {
	display: none;
}

.icpl-intra-ledger-choice-grid {
	display: grid;
	gap: 6px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.icpl-intra-ledger-choice-grid label {
	margin: 0;
}

.icpl-intra-ledger-choice-grid label > input {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.icpl-intra-ledger-choice-grid label > span {
	align-items: center;
	background: #f8fafc;
	border: 1px solid #cbd5e1;
	border-radius: 5px;
	cursor: pointer;
	display: flex;
	font-size: 12px;
	min-height: 36px;
	padding: 6px 9px;
}

.icpl-intra-ledger-choice-grid label > input:checked + span {
	background: #eaf1ff;
	border-color: #6e94df;
	box-shadow: inset 3px 0 0 var(--icpl-ledger-accent, #2457d6);
	color: #173f93;
	font-weight: 700;
}

.icpl-intra-ledger-choice-grid label > input:focus-visible + span {
	box-shadow: 0 0 0 2px rgba(36, 87, 214, .2);
	outline: 1px solid var(--icpl-ledger-accent, #2457d6);
}

.icpl-intra-ledger-access-methods {
	display: grid;
	gap: 7px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.icpl-intra-ledger-access-methods label {
	margin: 0;
}

.icpl-intra-ledger-access-methods label > input {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px !important;
	max-width: 1px;
	min-height: 1px !important;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px !important;
}

.icpl-intra-ledger-access-methods label > span {
	background: #f8fafc;
	border: 1px solid #cbd5e1;
	border-radius: 5px;
	cursor: pointer;
	display: grid;
	gap: 2px;
	min-height: 62px;
	padding: 9px 10px;
}

.icpl-intra-ledger-access-methods label > span strong {
	color: #253148;
	font-size: 12px;
}

.icpl-intra-ledger-access-methods label > span small {
	color: #64748b;
	font-size: 10px;
}

.icpl-intra-ledger-access-methods label > input:checked + span {
	background: #eaf1ff;
	border-color: #6e94df;
	box-shadow: inset 3px 0 0 var(--icpl-ledger-accent, #2457d6);
}

.icpl-intra-ledger-access-methods label > input:focus-visible + span {
	box-shadow: 0 0 0 2px rgba(36, 87, 214, .2);
	outline: 1px solid var(--icpl-ledger-accent, #2457d6);
}

@media (min-width: 1180px) {
	.icpl-intra-service-edit-layout {
		align-items: start;
		grid-template-columns: 210px minmax(0, 1fr);
	}

	.icpl-intra-service-edit-nav {
		display: grid;
		gap: 3px;
		max-height: calc(100vh - 135px);
		overflow-x: hidden;
		overflow-y: auto;
		padding: 9px;
		top: 112px;
	}

	.icpl-intra-service-edit-nav-heading {
		border-bottom: 1px solid #e2e8f0;
		display: grid;
		gap: 2px;
		margin-bottom: 3px;
		padding: 4px 5px 9px;
	}

	.icpl-intra-service-edit-nav-heading strong {
		font-size: 14px;
	}

	.icpl-intra-service-edit-nav-heading small {
		color: #64748b;
		font-size: 10px;
	}

	.icpl-intra-service-edit-nav button {
		flex-basis: auto;
		width: 100%;
	}

	.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.icpl-intra-ledger-choice-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.icpl-intra-ledger-access-methods {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	.icpl-intra-ledger-record-form.is-services [data-icpl-form-section-id="basic"] [data-icpl-ledger-field-id="summary"],
	.icpl-intra-ledger-record-form.is-services [data-icpl-form-section-id="technical"] [data-icpl-ledger-field-id="technical_summary"],
	.icpl-intra-ledger-record-form.is-services [data-icpl-form-section-id="account"] [data-icpl-ledger-field-id="access_guide"] {
		grid-column: span 2;
	}
}

@media (max-width: 760px) {
	.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-grid,
	.icpl-intra-ledger-choice-grid,
	.icpl-intra-ledger-access-methods {
		grid-template-columns: minmax(0, 1fr);
	}

	.icpl-intra-ledger-record-form.is-services .icpl-intra-ledger-form-field.is-wide,
	.icpl-intra-ledger-record-form.is-services [data-icpl-ledger-field-id="record_title"],
	.icpl-intra-ledger-record-form.is-services [data-icpl-ledger-field-id="managed_organization"],
	.icpl-intra-ledger-record-form.is-services [data-icpl-ledger-field-id="service_purposes"],
	.icpl-intra-ledger-record-form.is-services [data-icpl-ledger-field-id="access_method"] {
		grid-column: auto;
	}

	[data-icpl-service-classification-group="category"] .icpl-intra-service-classification-choices {
		grid-template-columns: minmax(0, 1fr);
	}

	.icpl-intra-service-edit-nav {
		position: static;
	}
}

.icpl-intra-ledger-relation-candidate:nth-child(odd) {
	border-right: 1px solid #edf0f4;
}

.icpl-intra-ledger-relation-candidate:hover {
	background: #f7f9fd;
}

.icpl-intra-ledger-relation-candidate.is-registered {
	background: #f7f8fa;
	color: #667085;
	cursor: default;
}

.icpl-intra-ledger-relation-candidate strong,
.icpl-intra-ledger-relation-candidate small {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.icpl-intra-ledger-relation-candidate em {
	background: #eef1f5;
	border-radius: 999px;
	font-size: 11px;
	font-style: normal;
	padding: 2px 7px;
}

.icpl-intra-ledger-relation-media-icon {
	align-items: center;
	display: inline-flex;
	height: 28px;
	justify-content: center;
	width: 28px;
}

.icpl-intra-ledger-relation-media-icon img,
.icpl-intra-ledger-relation-media-icon .dashicons {
	font-size: 24px;
	height: 24px;
	object-fit: contain;
	width: 24px;
}

.icpl-intra-ledger-relation-picker-actions {
	align-items: center;
	display: flex;
	gap: 12px;
	justify-content: flex-end;
	margin-top: 10px;
}

.icpl-intra-ledger-relation-row {
	background: #fff;
	border: 1px solid var(--icpl-ledger-line, #d8dee8);
	display: block;
	padding: 0;
}

.icpl-intra-ledger-relation-row + .icpl-intra-ledger-relation-row {
	margin-top: 8px;
}

.icpl-intra-ledger-relation-row > summary {
	align-items: center;
	cursor: pointer;
	display: grid;
	gap: 10px;
	grid-template-columns: 38px minmax(0, 1fr) auto;
	list-style: none;
	padding: 10px 12px;
}

.icpl-intra-ledger-relation-row > summary::-webkit-details-marker {
	display: none;
}

.icpl-intra-ledger-relation-row > summary::after {
	color: #667085;
	content: "＋";
	font-weight: 700;
}

.icpl-intra-ledger-relation-row[open] > summary::after {
	content: "−";
}

.icpl-intra-ledger-relation-summary-symbol {
	color: var(--icpl-ledger-accent, #2457d6);
	font-size: 25px;
	font-weight: 700;
	text-align: center;
}

.icpl-intra-ledger-relation-row.is-unconfirmed > summary {
	background: #fff7e6;
}

.icpl-intra-ledger-relation-row-body {
	border-top: 1px solid var(--icpl-ledger-line, #d8dee8);
	padding: 14px;
}

.icpl-intra-ledger-relation-warning {
	background: #fff7e6;
	border-left: 3px solid #d97706;
	margin: 0 0 12px;
	padding: 8px 10px;
}

.icpl-intra-ledger-dependency-choices {
	border: 0;
	margin: 0;
	padding: 0;
}

.icpl-intra-ledger-dependency-choices > legend {
	align-items: center;
	display: flex;
	font-size: 15px;
	font-weight: 700;
	gap: 8px;
	padding: 0;
}

.icpl-intra-ledger-dependency-choices > p {
	color: #667085;
	font-size: 12px;
	margin: 5px 0 10px;
}

.icpl-intra-ledger-dependency-choice-grid {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.icpl-intra-ledger-dependency-choice-grid label {
	background: #f8fafc;
	border: 2px solid transparent;
	cursor: pointer;
	display: grid;
	gap: 5px;
	padding: 10px;
	position: relative;
}

.icpl-intra-ledger-dependency-choice-grid label:has(input:checked) {
	background: #eef3ff;
	border-color: var(--icpl-ledger-accent, #2457d6);
}

.icpl-intra-ledger-dependency-choice-grid label:has(input:focus-visible) {
	outline: 2px solid #1d4ed8;
	outline-offset: 2px;
}

.icpl-intra-ledger-dependency-choice-grid input {
	left: 8px;
	position: absolute;
	top: 8px;
}

.icpl-intra-ledger-dependency-visual {
	align-items: center;
	display: grid;
	gap: 8px;
	grid-template-columns: minmax(0, 1fr) 32px minmax(0, 1fr);
	padding-left: 22px;
	text-align: center;
}

.icpl-intra-ledger-dependency-visual b {
	color: var(--icpl-ledger-accent, #2457d6);
	font-size: 25px;
}

.icpl-intra-ledger-dependency-choice-grid small {
	color: #667085;
	font-size: 11px;
	font-weight: 400;
	padding-left: 22px;
}

.icpl-intra-ledger-relation-options {
	border-top: 1px solid #edf0f4;
	margin-top: 12px;
	padding-top: 10px;
}

.icpl-intra-ledger-relation-options > summary {
	cursor: pointer;
	font-weight: 600;
}

.icpl-intra-ledger-relation-options-grid {
	display: grid;
	gap: 9px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	padding-top: 10px;
}

.icpl-intra-ledger-relation-options-grid .is-wide {
	grid-column: 1 / -1;
}

@media (max-width: 760px) {
	.icpl-intra-ledger-relation-picker-tools,
	.icpl-intra-ledger-relation-candidates,
	.icpl-intra-ledger-dependency-choice-grid,
	.icpl-intra-ledger-relation-options-grid {
		grid-template-columns: 1fr;
	}

	.icpl-intra-ledger-relation-candidate:nth-child(odd) {
		border-right: 0;
	}

	.icpl-intra-ledger-relation-row > summary {
		grid-template-columns: 34px minmax(0, 1fr) auto;
	}

	.icpl-intra-ledger-relation-row > summary [data-icpl-relation-summary-text] {
		display: none;
	}
}

/* Keep workspace layout authoritative over the component styles above. */
body .icpl-intra-mypage {
	left: 50%;
	margin: 0 0 0 -50vw;
	max-width: none;
	padding: clamp(20px, 2.5vw, 40px) clamp(16px, 3vw, 56px) 56px;
	width: 100vw;
}
body .icpl-intra-mypage .icpl-intra-tabs {
	display: grid;
	gap: clamp(20px, 2vw, 32px);
	grid-template-columns: minmax(210px, 250px) minmax(0, 1fr);
	margin-top: 0;
}
body .icpl-intra-mypage .icpl-intra-tab-list {
	align-self: start;
	border: 1px solid var(--icpl-workspace-line);
	border-radius: 14px;
	display: flex;
	flex-direction: column;
	gap: 5px;
	margin: 0;
	padding: 9px;
}
body .icpl-intra-mypage .icpl-intra-tab-list label { border: 0; border-radius: 9px; display: grid; flex: none; grid-template-columns: 34px minmax(0, 1fr) auto; min-height: 58px; padding: 9px 11px; text-align: left; }
body .icpl-intra-mypage .icpl-intra-tab-panel { grid-column: 2; min-width: 0; }
@media (max-width: 900px) {
	body .icpl-intra-mypage .icpl-intra-tabs { display: block; }
	body .icpl-intra-mypage .icpl-intra-tab-list { flex-direction: row; margin-bottom: 16px; overflow-x: auto; }
	body .icpl-intra-mypage .icpl-intra-tab-list label { flex: 0 0 auto; grid-template-columns: 30px auto auto; min-height: 48px; padding: 7px 10px; }
}
@media (max-width: 600px) {
	body .icpl-intra-mypage { padding: 12px 10px 32px; }
}

/* Ledger entrance: intangible, physical and thought axes */
.icpl-intra-ledger-dashboard-intro {
	color: var(--icpl-ledger-muted, #64748b);
	font-size: 14px;
	margin: -5px 0 18px;
}

.icpl-intra-ledger-axis-dashboard {
	display: grid;
	gap: 18px;
	margin-bottom: 20px;
}

.icpl-intra-ledger-axis {
	--icpl-axis-color: #2563eb;
	--icpl-axis-soft: #eff6ff;
	background: #fff;
	border: 1px solid #d9e2ea;
	border-radius: 12px;
	display: grid;
	grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
	overflow: hidden;
}

.icpl-intra-ledger-axis.is-physical {
	--icpl-axis-color: #0f766e;
	--icpl-axis-soft: #f0fdfa;
}

.icpl-intra-ledger-axis.is-thought {
	--icpl-axis-color: #7c3aed;
	--icpl-axis-soft: #f5f3ff;
}

.icpl-intra-ledger-axis-header {
	align-content: start;
	background: var(--icpl-axis-soft);
	border-right: 1px solid #d9e2ea;
	display: grid;
	gap: 12px;
	grid-template-columns: 42px minmax(0, 1fr);
	padding: 20px;
}

.icpl-intra-ledger-axis-icon {
	align-items: center;
	background: #fff;
	border: 1px solid #d9e2ea;
	border-radius: 50%;
	color: var(--icpl-axis-color);
	display: flex;
	font-size: 22px;
	height: 40px;
	justify-content: center;
	width: 40px;
}

.icpl-intra-ledger-axis-kicker {
	color: var(--icpl-axis-color);
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .12em;
	line-height: 1.3;
	margin-bottom: 3px;
}

.icpl-intra-ledger-axis-header h2 {
	font-size: 18px;
	line-height: 1.35;
	margin: 0 0 7px;
}

.icpl-intra-ledger-axis-header p {
	color: #526173;
	font-size: 13px;
	line-height: 1.65;
	margin: 0;
}

.icpl-intra-ledger-axis > .icpl-intra-ledger-dashboard {
	align-content: start;
	background: transparent;
	border: 0;
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	padding: 14px;
}

.icpl-intra-ledger-axis.is-intangible > .icpl-intra-ledger-dashboard {
	grid-template-columns: 1fr;
}

.icpl-intra-ledger-tree {
	display: grid;
	gap: 10px;
}

.icpl-intra-ledger-tree + .icpl-intra-ledger-tree {
	border-top: 1px solid #dfe5ec;
	margin-top: 6px;
	padding-top: 16px;
}

body .icpl-intra-ledger-axis .icpl-intra-ledger-card.is-parent {
	background: var(--icpl-axis-soft);
	border-color: var(--icpl-axis-color);
	min-height: 84px;
}

body .icpl-intra-ledger-axis .icpl-intra-ledger-card.is-parent strong {
	font-size: 16px;
}

.icpl-intra-ledger-child-entrances {
	border-left: 2px solid #bfdbfe;
	margin-left: 24px;
	padding: 2px 0 2px 20px;
}

.icpl-intra-ledger-child-label {
	align-items: center;
	color: var(--icpl-axis-color);
	display: flex;
	font-size: 13px;
	font-weight: 700;
	gap: 7px;
	margin: 0 0 9px -32px;
}

.icpl-intra-ledger-child-label > .dashicons {
	background: #fff;
	font-size: 18px;
	height: 22px;
	line-height: 22px;
	width: 22px;
}

.icpl-intra-ledger-child-label small {
	color: #64748b;
	font-size: 11px;
	font-weight: 400;
	margin-left: 5px;
}

.icpl-intra-ledger-child-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

body .icpl-intra-ledger-axis .icpl-intra-ledger-child-grid .icpl-intra-ledger-card.is-child {
	min-height: 68px;
}

body .icpl-intra-ledger-axis .icpl-intra-ledger-card {
	align-items: center;
	background: #fff;
	border: 1px solid #dfe5ec;
	border-radius: 8px;
	display: grid;
	gap: 11px;
	grid-template-columns: 36px minmax(0, 1fr);
	min-height: 76px;
	padding: 12px 13px;
}

body .icpl-intra-ledger-axis .icpl-intra-ledger-card:hover,
body .icpl-intra-ledger-axis .icpl-intra-ledger-card:focus {
	background: var(--icpl-axis-soft);
	border-color: var(--icpl-axis-color);
}

body .icpl-intra-ledger-axis .icpl-intra-ledger-card > .dashicons {
	color: var(--icpl-axis-color);
	font-size: 28px;
	height: 28px;
	width: 28px;
}

body .icpl-intra-ledger-axis .icpl-intra-ledger-card > span:nth-child(2) {
	display: block;
}

.icpl-intra-ledger-axis .icpl-intra-ledger-card strong,
.icpl-intra-ledger-axis .icpl-intra-ledger-card small {
	display: block;
}

.icpl-intra-ledger-axis .icpl-intra-ledger-card small {
	color: #64748b;
	font-size: 12px;
	line-height: 1.5;
	margin-top: 3px;
}

body .icpl-intra-ledger-axis .icpl-intra-ledger-card.is-placeholder {
	background: #fafafa;
	border-style: dashed;
	cursor: default;
	grid-template-columns: 36px minmax(0, 1fr) auto;
}

body .icpl-intra-ledger-axis .icpl-intra-ledger-card.is-placeholder:hover {
	background: #fafafa;
	border-color: #d8dce3;
}

.icpl-intra-ledger-coming-soon {
	background: var(--icpl-axis-soft);
	border-radius: 999px;
	color: var(--icpl-axis-color);
	font-size: 11px;
	font-weight: 700;
	padding: 4px 8px;
	white-space: nowrap;
}

.icpl-intra-ledger-axis-empty {
	align-self: center;
	color: #64748b;
	margin: 0;
	padding: 12px;
}

@media (max-width: 960px) {
	.icpl-intra-ledger-axis {
		grid-template-columns: 1fr;
	}

	.icpl-intra-ledger-axis-header {
		border-bottom: 1px solid #d9e2ea;
		border-right: 0;
	}
}

@media (max-width: 640px) {
	.icpl-intra-ledger-axis > .icpl-intra-ledger-dashboard {
		grid-template-columns: 1fr;
		padding: 10px;
	}

	.icpl-intra-ledger-axis-header {
		padding: 16px;
	}

	.icpl-intra-ledger-child-entrances {
		margin-left: 13px;
		padding-left: 14px;
	}

	.icpl-intra-ledger-child-label {
		align-items: flex-start;
		margin-left: -26px;
	}

	.icpl-intra-ledger-child-label small {
		display: block;
		margin: 2px 0 0;
	}

	.icpl-intra-ledger-child-grid {
		grid-template-columns: 1fr;
	}

	body .icpl-intra-ledger-axis .icpl-intra-ledger-card.is-placeholder {
		grid-template-columns: 32px minmax(0, 1fr);
	}

	.icpl-intra-ledger-coming-soon {
		grid-column: 2;
		justify-self: start;
	}
}


/* Ledger identity icons */
body .icpl-intra-ledger-card {
	grid-template-columns: 42px minmax(0, 1fr);
}
body .icpl-intra-ledger-card > .dashicons {
	font-size: 34px;
	height: 34px;
	line-height: 1;
	width: 34px;
}
body .icpl-intra-ledger-title {
	align-items: center;
	display: flex;
	gap: 9px;
}
body .icpl-intra-ledger-title > .dashicons {
	color: var(--icpl-ledger-accent, #2457d6);
	flex: 0 0 auto;
	font-size: 30px;
	height: 30px;
	line-height: 1;
	width: 30px;
}



@media (max-width: 720px) {
	.icpl-intra-ledger-heading {
		gap: 12px;
	}
	.icpl-intra-ledger-heading > a,
	.icpl-intra-ledger-heading .icpl-intra-ledger-form-actions {
		width: 100%;
	}
	.icpl-intra-ledger-search {
		padding: 10px;
	}
	.icpl-intra-ledger-search-query,
	.icpl-intra-ledger-search-sort {
		flex-basis: 100%;
	}
	.icpl-intra-ledger-search button,
	.icpl-intra-ledger-search > a {
		box-sizing: border-box;
		text-align: center;
		width: 100%;
	}
	.icpl-intra-ledger-table-wrap {
		background: transparent;
		border: 0;
		box-shadow: none;
		overflow: visible;
	}
	.icpl-intra-ledger-table {
		display: block;
		min-width: 0;
	}
	.icpl-intra-ledger-table thead {
		display: none;
	}
	.icpl-intra-ledger-table tbody {
		display: grid;
		gap: 12px;
	}
	.icpl-intra-ledger-table tr {
		background: #fff;
		border: 1px solid #d9e2ea;
		border-radius: 10px;
		box-shadow: 0 2px 8px rgba(15, 23, 42, .04);
		display: block;
		overflow: hidden;
	}
	.icpl-intra-ledger-table td,
	.icpl-intra-ledger-table td:first-child {
		align-items: start;
		background: #fff !important;
		border-bottom: 1px solid #edf1f4;
		display: grid;
		gap: 10px;
		grid-template-columns: minmax(90px, 34%) minmax(0, 1fr);
		max-width: none;
		min-width: 0;
		padding: 9px 11px;
	}
	.icpl-intra-ledger-table td::before {
		color: #64748b;
		content: attr(data-label);
		font-size: 11px;
		font-weight: 700;
	}
	.icpl-intra-ledger-table td:first-child {
		background: #f4f8f8 !important;
		font-size: 16px;
		padding-bottom: 12px;
		padding-top: 12px;
	}
	.icpl-intra-ledger-table td:last-child {
		border-bottom: 0;
	}
	.icpl-intra-ledger-table .icpl-intra-ledger-empty {
		display: block;
	}
	.icpl-intra-ledger-table .icpl-intra-ledger-empty::before {
		content: none;
	}
	.icpl-intra-ledger-form-card,
	.icpl-intra-ledger-detail,
	.icpl-intra-ledger-form-section {
		padding: 14px;
	}
	.icpl-intra-ledger-detail-section .icpl-intra-ledger-detail-list {
		display: block;
	}
	.icpl-intra-ledger-detail-section .icpl-intra-ledger-detail-list dt {
		background: #f8fafc;
		padding: 9px 11px 3px;
	}
	.icpl-intra-ledger-detail-section .icpl-intra-ledger-detail-list dd {
		padding: 3px 11px 10px;
	}
}

.icpl-intra-mypage-entry-wrap {
	align-items: center;
	background: #111;
	border-bottom: 1px solid #222;
	box-sizing: border-box;
	display: flex;
	gap: 10px;
	justify-content: flex-end;
	padding: 8px 16px;
	position: sticky;
	top: 0;
	width: 100%;
	z-index: 9999;
}
body.admin-bar .icpl-intra-mypage-entry-wrap {
	top: 32px;
}
@media (max-width: 782px) {
	body.admin-bar .icpl-intra-mypage-entry-wrap {
		top: 46px;
	}
}
.icpl-intra-mypage-entry {
	border-radius: 4px;
	background: #fff;
	color: #111;
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	padding: 8px 12px;
	text-decoration: none;
}
.icpl-intra-mypage-entry:hover,
.icpl-intra-mypage-entry:focus {
	background: #f0f0f0;
	color: #111;
	text-decoration: none;
}
.icpl-intra-mypage-entry-badge {
	background: #d63638;
	border-radius: 999px;
	color: #fff;
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	margin-left: 8px;
	padding: 6px 10px;
	text-decoration: none;
	vertical-align: middle;
}
.icpl-intra-mypage-entry-badge:hover,
.icpl-intra-mypage-entry-badge:focus {
	background: #b32d2e;
	color: #fff;
	text-decoration: none;
}
.icpl-intra-attendance-form {
	align-items: center;
	display: inline-flex;
	gap: 6px;
	margin: 0 0 0 8px;
}
.icpl-intra-attendance-current,
.icpl-intra-attendance-times {
	color: #fff;
	font-size: 12px;
	font-weight: 700;
}
.icpl-intra-attendance-times {
	color: #cbd5e1;
	font-weight: 400;
}
.icpl-intra-attendance-form label {
	align-items: center;
	color: #fff;
	display: inline-flex;
	gap: 4px;
	font-size: 12px;
	font-weight: 700;
	margin: 0;
}
.icpl-intra-attendance-form select,
.icpl-intra-attendance-form input[type="time"] {
	border: 1px solid #555;
	border-radius: 4px;
	font-size: 13px;
	min-height: 31px;
	padding: 4px 7px;
}
.icpl-intra-attendance-form button {
	border: 1px solid #fff;
	border-radius: 4px;
	background: #111;
	color: #fff;
	cursor: pointer;
	font-size: 13px;
	font-weight: 700;
	min-height: 31px;
	padding: 4px 10px;
}
.icpl-intra-attendance-form[data-icpl-attendance-form] button {
	display: none;
}
.icpl-intra-attendance-form[data-icpl-punch-form] button {
	border-color: #fff;
	background: #fff;
	color: #111;
}
.icpl-intra-attendance-form[data-icpl-punch-form] button:disabled {
	cursor: wait;
	opacity: .7;
}
.icpl-intra-attendance-save-status {
	color: #c3f0ca;
	font-size: 12px;
	font-weight: 700;
	min-width: 72px;
}
.icpl-intra-attendance-save-status[data-state="saving"] {
	color: #f0d98a;
}
.icpl-intra-attendance-save-status[data-state="error"] {
	color: #ffb3b3;
}
.icpl-intra-mypage h2,
.icpl-intra-mypage h3 {
	margin-top: 0;
}
.icpl-intra-mypage-summary {
	display: flex;
	align-items: center;
	gap: 20px;
	margin: 16px 0 24px;
}
.icpl-intra-profile-photo {
	flex: 0 0 120px;
	width: 120px;
	height: 120px;
}
.icpl-intra-profile-photo img,
.icpl-intra-profile-photo-placeholder {
	width: 120px;
	height: 120px;
	border-radius: 8px;
	border: 1px solid #dcdcde;
	object-fit: cover;
	box-sizing: border-box;
}
.icpl-intra-profile-photo-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f6f7f7;
	color: #646970;
	font-size: 12px;
	font-weight: 700;
}
.icpl-intra-photo-form {
	margin: 0;
}
.icpl-intra-photo-form label {
	display: block;
	margin-bottom: 6px;
	font-weight: 700;
}
.icpl-intra-photo-form input[type="file"] {
	display: block;
	margin-bottom: 10px;
}
.icpl-intra-photo-form p {
	margin: 8px 0 0;
	color: #646970;
	font-size: 13px;
}
.icpl-intra-mypage-profile,
.icpl-intra-request-diff {
	width: 100%;
	border-collapse: collapse;
	margin: 16px 0 24px;
}
.icpl-intra-mypage-profile th,
.icpl-intra-mypage-profile td,
.icpl-intra-request-diff th,
.icpl-intra-request-diff td {
	border: 1px solid #dcdcde;
	padding: 10px 12px;
	text-align: left;
	vertical-align: top;
}
.icpl-intra-mypage-profile th,
.icpl-intra-request-diff th {
	width: 160px;
	background: #f6f7f7;
	font-weight: 700;
}
.icpl-intra-mypage-form,
.icpl-intra-profile-edit-form {
	margin-top: 24px;
}
.icpl-intra-mypage-form label {
	display: block;
	margin-bottom: 6px;
	font-weight: 700;
}
.icpl-intra-mypage-form input[type="text"] {
	width: 100%;
	max-width: 420px;
	box-sizing: border-box;
}
.icpl-intra-edit-toggle {
	position: absolute;
	left: -9999px;
}
.icpl-intra-edit-value,
.icpl-intra-submit-button,
.icpl-intra-cancel-button {
	display: none;
}
.icpl-intra-edit-value {
	width: 100%;
	max-width: 420px;
	box-sizing: border-box;
}
.icpl-intra-edit-toggle:checked ~ .icpl-intra-mypage-profile .icpl-intra-display-value,
.icpl-intra-edit-toggle:checked ~ .icpl-intra-profile-actions .icpl-intra-edit-button {
	display: none;
}
.icpl-intra-edit-toggle:checked ~ .icpl-intra-mypage-profile .icpl-intra-edit-value {
	display: inline-block;
}
.icpl-intra-edit-toggle:checked ~ .icpl-intra-profile-actions .icpl-intra-submit-button,
.icpl-intra-edit-toggle:checked ~ .icpl-intra-profile-actions .icpl-intra-cancel-button {
	display: inline-block;
}
.icpl-intra-profile-actions {
	display: flex;
	gap: 8px;
	margin: -8px 0 24px;
}
.icpl-intra-profile-actions .button,
.icpl-intra-photo-form button,
.icpl-intra-actions button {
	border: 1px solid #2271b1;
	border-radius: 4px;
	background: #2271b1;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 14px;
	line-height: 1.4;
	padding: 7px 14px;
	text-decoration: none;
}
.icpl-intra-profile-actions .button:not(.button-primary),
.icpl-intra-actions .button:not(.button-primary) {
	border-color: #8c8f94;
	background: #fff;
	color: #2c3338;
}
.icpl-intra-mypage-notice {
	margin: 16px 0;
	padding: 12px 14px;
	border: 1px solid #dcdcde;
	background: #fff;
}
.icpl-intra-mypage-notice.success {
	border-color: #8ad39f;
	background: #effaf2;
}
.icpl-intra-mypage-notice.error {
	border-color: #f1a7a7;
	background: #fff2f2;
}
.icpl-intra-tabs {
	margin-top: 18px;
}
.icpl-intra-tab-input {
	position: absolute;
	left: -9999px;
}
.icpl-intra-tab-list {
	border-bottom: 1px solid #dcdcde;
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-bottom: 20px;
}
.icpl-intra-tab-list label {
	align-items: center;
	border: 1px solid #dcdcde;
	border-bottom: 0;
	border-radius: 6px 6px 0 0;
	background: #f6f7f7;
	color: #2c3338;
	cursor: pointer;
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	gap: 7px;
	line-height: 1;
	padding: 12px 16px;
}
.icpl-intra-tab-badge {
	align-items: center;
	background: #d63638;
	border-radius: 999px;
	box-sizing: border-box;
	color: #fff;
	display: inline-flex;
	font-size: 12px;
	font-weight: 700;
	height: 20px;
	justify-content: center;
	line-height: 1;
	min-width: 20px;
	padding: 0 5px;
}
.icpl-intra-tab-panel {
	display: none;
}
#icpl_intra_tab_profile:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_profile"],
#icpl_intra_tab_devices:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_devices"],
#icpl_intra_tab_related:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_related"],
#icpl_intra_tab_attendance:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_attendance"],
#icpl_intra_tab_sites:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_sites"],
#icpl_intra_tab_ledgers:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_ledgers"],
#icpl_intra_tab_tasks:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_tasks"],
#icpl_intra_tab_approvals:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_approvals"] {
	background: #fff;
	color: #111;
	margin-bottom: -1px;
	padding-bottom: 13px;
}
#icpl_intra_tab_profile:checked ~ .icpl-intra-tab-profile,
#icpl_intra_tab_devices:checked ~ .icpl-intra-tab-devices,
#icpl_intra_tab_related:checked ~ .icpl-intra-tab-related,
#icpl_intra_tab_attendance:checked ~ .icpl-intra-tab-attendance,
#icpl_intra_tab_sites:checked ~ .icpl-intra-tab-sites,
#icpl_intra_tab_ledgers:checked ~ .icpl-intra-tab-ledgers,
#icpl_intra_tab_tasks:checked ~ .icpl-intra-tab-tasks,
#icpl_intra_tab_approvals:checked ~ .icpl-intra-tab-approvals {
	display: block;
}
.icpl-intra-mypage-pending {
	margin-top: 24px;
}
.icpl-intra-devices {
	border-top: 1px solid #dcdcde;
	margin-top: 28px;
	padding-top: 24px;
}
.icpl-intra-tab-devices .icpl-intra-devices {
	border-top: 0;
	margin-top: 0;
	padding-top: 0;
}
.icpl-intra-devices > p {
	color: #646970;
	font-size: 13px;
	margin: 0 0 14px;
}
.icpl-intra-device-list {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}
.icpl-intra-device-item {
	border: 1px solid #dcdcde;
	padding: 14px;
}
.icpl-intra-device-name-form label {
	display: block;
	font-weight: 700;
	margin-bottom: 8px;
}
.icpl-intra-device-name-form label span {
	display: block;
	margin-bottom: 6px;
}
.icpl-intra-device-name-form input[type="text"] {
	box-sizing: border-box;
	width: 100%;
}
.icpl-intra-device-meta {
	color: #646970;
	font-size: 12px;
	line-height: 1.6;
	margin: 10px 0;
}
.icpl-intra-device-meta span {
	display: block;
	overflow-wrap: anywhere;
}
.icpl-intra-device-name-form button,
.icpl-intra-device-delete-form button {
	border: 1px solid #2271b1;
	border-radius: 4px;
	background: #2271b1;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	line-height: 1.4;
	padding: 6px 12px;
	text-decoration: none;
}
.icpl-intra-device-delete-form button {
	border-color: #8c8f94;
	background: #fff;
	color: #2c3338;
}
.icpl-intra-admin-requests {
	margin-top: 0;
}
.icpl-intra-admin-request-block {
	margin-top: 18px;
}
.icpl-intra-admin-request-block h4 {
	margin: 0 0 10px;
}
.icpl-intra-site-access > p {
	color: #646970;
	font-size: 13px;
	margin: 0 0 14px;
}
.icpl-intra-site-access-table {
	border-collapse: collapse;
	margin: 12px 0 24px;
	width: 100%;
}
.icpl-intra-site-access-table th,
.icpl-intra-site-access-table td {
	border: 1px solid #dcdcde;
	padding: 10px 12px;
	text-align: left;
	vertical-align: middle;
}
.icpl-intra-site-access-table th {
	background: #f6f7f7;
	font-weight: 700;
}
.icpl-intra-site-access-table td strong,
.icpl-intra-site-access-table td span {
	display: block;
}
.icpl-intra-site-access-table td > span:not(.icpl-intra-site-access-status) {
	color: #646970;
	font-size: 12px;
	margin-top: 2px;
	overflow-wrap: anywhere;
}
.icpl-intra-site-access-status {
	background: #f6f7f7;
	border-radius: 999px;
	color: #2c3338;
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	padding: 4px 10px;
}
.icpl-intra-site-access-status.is-registered {
	background: #e7f7ed;
	color: #116329;
}
.icpl-intra-site-access-status.is-pending {
	background: #fff7e6;
	color: #8a5200;
}
.icpl-intra-site-access-table small,
.icpl-intra-site-access-muted {
	color: #646970;
	display: block;
	font-size: 12px;
	margin-top: 4px;
}
.icpl-intra-site-access-table button,
.icpl-intra-site-access-review-actions .button {
	border: 1px solid #2271b1;
	border-radius: 4px;
	background: #2271b1;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	line-height: 1.4;
	padding: 7px 14px;
	text-decoration: none;
}
.icpl-intra-site-access-review-form {
	display: grid;
	gap: 8px;
	min-width: 220px;
}
.icpl-intra-site-access-review-form label {
	display: grid;
	gap: 4px;
}
.icpl-intra-site-access-review-form label span {
	color: #646970;
	font-size: 12px;
	font-weight: 700;
}
.icpl-intra-site-access-review-form select,
.icpl-intra-site-access-review-form input[type="text"],
.icpl-intra-site-access-table form select,
.icpl-intra-site-access-table form textarea {
	box-sizing: border-box;
	width: 100%;
}
.icpl-intra-site-access-table form {
	display: grid;
	gap: 8px;
	min-width: 220px;
}
.icpl-intra-site-access-table form label {
	display: grid;
	gap: 4px;
}
.icpl-intra-site-access-table form label span {
	color: #646970;
	font-size: 12px;
	font-weight: 700;
}
.icpl-intra-site-role-guide {
	color: #646970;
	font-size: 12px;
}
.icpl-intra-site-role-guide summary {
	cursor: pointer;
	font-weight: 700;
}
.icpl-intra-site-role-guide dl {
	margin: 6px 0;
}
.icpl-intra-site-role-guide dt {
	font-weight: 700;
}
.icpl-intra-site-role-guide dd {
	margin: 0 0 6px;
}
.icpl-intra-site-access-review-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.icpl-intra-site-access-review-actions .button:not(.button-primary) {
	border-color: #8c8f94;
	background: #fff;
	color: #2c3338;
}
.icpl-intra-attendance-review-columns {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.icpl-intra-attendance-review-columns h5 {
	margin: 0 0 10px;
}
.icpl-intra-attendance-review-detail {
	border: 1px solid #dcdcde;
	margin: 0 0 18px;
	padding: 14px;
}
.icpl-intra-attendance-review-detail h5 {
	margin: 0 0 12px;
}
.icpl-intra-attendance-unsubmitted-summary {
	border: 1px solid #dcdcde;
	background: #fff;
	margin: 0 0 18px;
	padding: 14px;
}
.icpl-intra-attendance-unsubmitted-summary h4 {
	margin: 0 0 10px;
}
.icpl-intra-devices-table {
	border-collapse: collapse;
	margin: 12px 0 24px;
	width: 100%;
}
.icpl-intra-devices-table th,
.icpl-intra-devices-table td {
	border: 1px solid #dcdcde;
	padding: 10px 12px;
	text-align: left;
	vertical-align: top;
}
.icpl-intra-devices-table th {
	background: #f6f7f7;
	font-weight: 700;
}
.icpl-intra-devices-table .description {
	color: #646970;
	display: block;
	font-size: 12px;
	line-height: 1.5;
	margin-top: 2px;
	overflow-wrap: anywhere;
}
.icpl-intra-devices-table .button {
	border: 1px solid #8c8f94;
	border-radius: 4px;
	background: #fff;
	color: #2c3338;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	line-height: 1.4;
	padding: 6px 12px;
	text-decoration: none;
}
.icpl-intra-devices-table .button-primary {
	border-color: #2271b1;
	background: #2271b1;
	color: #fff;
}
.icpl-intra-attendance-month {
	margin-top: 0;
}
.icpl-intra-attendance-month-filter {
	align-items: flex-end;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 16px;
}
.icpl-intra-attendance-month-filter label {
	display: grid;
	gap: 4px;
}
.icpl-intra-attendance-month-filter span {
	font-size: 12px;
	font-weight: 700;
}
.icpl-intra-attendance-month-filter button,
.icpl-intra-attendance-month-actions button {
	border: 1px solid #2271b1;
	border-radius: 4px;
	background: #2271b1;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	line-height: 1.4;
	padding: 7px 14px;
	text-decoration: none;
}
.icpl-intra-attendance-confirmed {
	border-left: 4px solid #00a32a;
	background: #effaf2;
	margin: 0 0 12px;
	padding: 10px 12px;
}
.icpl-intra-attendance-submitted {
	border-left: 4px solid #dba617;
	background: #fcf9e8;
	margin: 0 0 12px;
	padding: 10px 12px;
}
.icpl-intra-attendance-returned {
	border-left: 4px solid #d63638;
	background: #fcf0f1;
	margin: 0 0 12px;
	padding: 10px 12px;
}
.icpl-intra-attendance-returned span {
	display: block;
	margin-top: 6px;
}
.icpl-intra-attendance-month-table {
	border-collapse: collapse;
	margin: 12px 0 14px;
	width: 100%;
}
.icpl-intra-attendance-month-table th,
.icpl-intra-attendance-month-table td {
	border: 1px solid #dcdcde;
	padding: 8px 10px;
	text-align: left;
	vertical-align: middle;
}
.icpl-intra-attendance-month-table th {
	background: #f6f7f7;
	font-weight: 700;
	white-space: nowrap;
}
.icpl-intra-attendance-month-table tr.icpl-intra-attendance-saturday th,
.icpl-intra-attendance-month-table tr.icpl-intra-attendance-saturday td {
	background: #f0f6ff;
}
.icpl-intra-attendance-month-table tr.icpl-intra-attendance-saturday th {
	color: #135e96;
}
.icpl-intra-attendance-month-table tr.icpl-intra-attendance-sunday th,
.icpl-intra-attendance-month-table tr.icpl-intra-attendance-sunday td {
	background: #fff3f3;
}
.icpl-intra-attendance-month-table tr.icpl-intra-attendance-sunday th {
	color: #b32d2e;
}
.icpl-intra-attendance-month-table input[type="time"],
.icpl-intra-attendance-month-table input[type="text"] {
	box-sizing: border-box;
	width: 100%;
}
.icpl-intra-breaks-cell {
	min-width: 110px;
}
.icpl-intra-break-minutes-field {
	align-items: center;
	display: inline-flex;
	gap: 4px;
}
.icpl-intra-break-minutes-field input[type="number"] {
	box-sizing: border-box;
	max-width: 72px;
}
.icpl-intra-delay-certificate {
	min-width: 190px;
}
.icpl-intra-delay-certificate a,
.icpl-intra-delay-file-name,
.icpl-intra-delay-delete {
	display: block;
	font-size: 12px;
	line-height: 1.5;
	margin: 0 0 4px;
}
.icpl-intra-delay-upload {
	border: 1px solid #8c8f94;
	border-radius: 4px;
	background: #fff;
	color: #2c3338;
	cursor: pointer;
	display: inline-block;
	font-size: 12px;
	line-height: 1.4;
	padding: 4px 9px;
}
.icpl-intra-delay-upload input[type="file"] {
	height: 1px;
	opacity: 0;
	position: absolute;
	width: 1px;
}
.icpl-intra-delay-file-name {
	color: #646970;
	margin-top: 4px;
	overflow-wrap: anywhere;
}
.icpl-intra-attendance-month-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.icpl-intra-attendance-month-actions button:last-child {
	border-color: #00a32a;
	background: #00a32a;
}
.icpl-intra-pending-requests {
	width: 100%;
	border-collapse: collapse;
	margin-top: 16px;
}
.icpl-intra-pending-requests th,
.icpl-intra-pending-requests td {
	border: 1px solid #dcdcde;
	padding: 10px 12px;
	text-align: left;
	vertical-align: top;
}
.icpl-intra-approval-list th:first-child {
	width: 20%;
}
.icpl-intra-approval-list th:nth-child(2) {
	width: 38%;
}
.icpl-intra-approval-list th:nth-child(3) {
	width: 42%;
}
.icpl-intra-approval-history th:first-child {
	width: 24%;
}
.icpl-intra-approval-history th:nth-child(2) {
	width: 46%;
}
.icpl-intra-approval-history th:nth-child(3) {
	width: 30%;
}
.icpl-intra-approval-summary-row td {
	border-bottom: 0;
}
.icpl-intra-approval-detail-row td {
	border-top: 0;
	padding-top: 6px;
}
.icpl-intra-approval-detail-row .icpl-intra-approval-detail,
.icpl-intra-approval-detail-row .icpl-intra-approval-history-detail {
	width: 100%;
}
.icpl-intra-approval-history-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 28px;
	margin-bottom: 8px;
}
.icpl-intra-approval-history-meta span {
	overflow-wrap: anywhere;
}
.icpl-intra-approval-history-meta strong {
	margin-right: 6px;
}
.icpl-intra-approval-type {
	background: #f0f6fc;
	border: 1px solid #c5d9ed;
	border-radius: 999px;
	color: #1d4f7a;
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	padding: 4px 9px;
	white-space: nowrap;
}
.icpl-intra-approval-history-section {
	border-top: 1px solid #dcdcde;
	margin-top: 32px;
	padding-top: 24px;
}
.icpl-intra-approval-history-section > h3 {
	margin-bottom: 4px;
}
.icpl-intra-approval-history-detail summary {
	color: #135e96;
	cursor: pointer;
	font-weight: 700;
}
.icpl-intra-approval-history-detail dl {
	margin: 8px 0 0;
	min-width: 240px;
	white-space: normal;
}
.icpl-intra-approval-history-detail dt {
	font-weight: 700;
	margin-top: 6px;
}
.icpl-intra-approval-history-detail dd {
	margin: 2px 0 0;
	overflow-wrap: anywhere;
}
.icpl-intra-approval-history-detail p {
	color: #646970;
	margin: 8px 0 0;
}
.icpl-intra-approval-result {
	border: 1px solid currentColor;
	border-radius: 999px;
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
	padding: 3px 8px;
	white-space: nowrap;
}
.icpl-intra-approval-result.is-approved {
	background: #edfaef;
	color: #1a6b2b;
}
.icpl-intra-approval-result.is-rejected {
	background: #fff0f0;
	color: #b32d2e;
}
.icpl-intra-approval-result.is-returned {
	background: #fff8e5;
	color: #8a5a00;
}
.icpl-intra-approval-detail summary {
	border: 1px solid #8c8f94;
	border-radius: 4px;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	padding: 6px 12px;
}
.icpl-intra-approval-detail[open] summary {
	margin-bottom: 12px;
}
.icpl-intra-approval-detail-body {
	display: grid;
	gap: 14px;
	max-width: none;
}
.icpl-intra-approval-definition {
	display: grid;
	gap: 8px 14px;
	grid-template-columns: 140px minmax(0, 1fr);
	margin: 0;
}
.icpl-intra-approval-definition dt {
	color: #646970;
	font-weight: 700;
}
.icpl-intra-approval-definition dd {
	margin: 0;
	overflow-wrap: anywhere;
}
.icpl-intra-approval-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.icpl-intra-approval-actions form,
.icpl-intra-approval-review-form {
	display: grid;
	gap: 8px;
	min-width: 220px;
}
.icpl-intra-approval-actions textarea,
.icpl-intra-approval-review-form textarea,
.icpl-intra-approval-review-form select {
	box-sizing: border-box;
	width: 100%;
}
.icpl-intra-approval-review-form label span {
	display: block;
	font-size: 12px;
	font-weight: 700;
	margin-bottom: 4px;
}
.icpl-intra-actions form {
	margin: 0 0 8px;
}
.icpl-intra-actions button {
	cursor: pointer;
}
.icpl-intra-attendance-return-form textarea {
	box-sizing: border-box;
	display: block;
	margin: 0 0 8px;
	width: 100%;
}
.icpl-intra-attendance-board {
	border: 1px solid #dcdcde;
	margin: 0 0 28px;
	padding: 16px;
}
.icpl-intra-attendance-board h2 {
	margin: 0 0 14px;
}
.icpl-intra-attendance-list {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.icpl-intra-attendance-item {
	align-items: center;
	border: 1px solid #dcdcde;
	border-left: 5px solid #8c8f94;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	padding: 10px 12px;
}
.icpl-intra-attendance-item strong,
.icpl-intra-attendance-item span {
	display: block;
}
.icpl-intra-attendance-item > div:first-child span {
	color: #646970;
	font-size: 12px;
	margin-top: 2px;
}
.icpl-intra-attendance-status {
	font-weight: 700;
	text-align: right;
}
.icpl-intra-attendance-return {
	color: #646970;
	font-size: 12px;
	margin-top: 2px;
	text-align: right;
}
.icpl-intra-attendance-working {
	border-left-color: #00a32a;
}
.icpl-intra-attendance-lunch {
	border-left-color: #dba617;
}
.icpl-intra-attendance-away {
	border-left-color: #2271b1;
}
.icpl-intra-attendance-left {
	border-left-color: #8c8f94;
	opacity: .72;
}
@media (max-width: 782px) {
	.icpl-intra-mypage {
		padding: 0;
	}
	.icpl-intra-mypage-entry-wrap {
		align-items: flex-end;
		flex-direction: column;
	}
	.icpl-intra-attendance-form {
		flex-wrap: wrap;
		justify-content: flex-end;
		margin-left: 0;
	}
	.icpl-intra-tab-list label {
		flex: 1 1 auto;
		text-align: center;
	}
	.icpl-intra-mypage-summary {
		align-items: flex-start;
		flex-direction: column;
	}
	.icpl-intra-admin-requests {
		overflow-x: auto;
	}
	.icpl-intra-attendance-month-form {
		overflow-x: auto;
	}
	.icpl-intra-attendance-month-table {
		min-width: 980px;
	}
	.icpl-intra-pending-requests {
		min-width: 760px;
	}
	.icpl-intra-approval-definition {
		grid-template-columns: 1fr;
	}
}

.icpl-intra-ledgers,
.icpl-intra-ledger-view {
	width: 100%;
}

.icpl-intra-ledger-dashboard {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.icpl-intra-ledger-card {
	align-items: flex-start;
	background: #fff;
	border: 1px solid #d9e2ea;
	border-radius: 12px;
	color: #172033;
	display: flex;
	gap: 13px;
	padding: 18px;
	text-decoration: none;
	transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.icpl-intra-ledger-card:hover,
.icpl-intra-ledger-card:focus {
	border-color: #0f6f68;
	box-shadow: 0 8px 24px rgba(15, 35, 50, .08);
	transform: translateY(-1px);
}

.icpl-intra-ledger-card > .dashicons {
	color: #0f6f68;
	font-size: 28px;
	height: 28px;
	width: 28px;
}

.icpl-intra-ledger-card strong,
.icpl-intra-ledger-card small {
	display: block;
}

.icpl-intra-ledger-card small {
	color: #64748b;
	line-height: 1.55;
	margin-top: 5px;
}

.icpl-intra-ledger-heading {
	align-items: flex-start;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin-bottom: 18px;
}

.icpl-intra-ledger-heading h1,
.icpl-intra-ledger-heading h2 {
	margin: 0 0 6px;
}

.icpl-intra-ledger-heading p {
	color: #64748b;
	margin: 0;
}

.icpl-intra-ledger-button,
.icpl-intra-ledger-secret-button {
	background: #0f6f68;
	border: 1px solid #0f6f68;
	border-radius: 7px;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font: inherit;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	padding: 9px 14px;
	text-decoration: none;
	white-space: nowrap;
}

.icpl-intra-ledger-button:hover,
.icpl-intra-ledger-button:focus,
.icpl-intra-ledger-secret-button:hover,
.icpl-intra-ledger-secret-button:focus {
	background: #0a5651;
	color: #fff;
}

.icpl-intra-ledger-button.is-secondary,
.icpl-intra-ledger-secret-button {
	background: #fff;
	border-color: #cbd5e1;
	color: #334155;
}

.icpl-intra-ledger-search {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 14px;
}

.icpl-intra-ledger-search input,
.icpl-intra-ledger-search select {
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 7px;
	box-sizing: border-box;
	min-height: 40px;
	padding: 7px 10px;
}

.icpl-intra-ledger-search input[type="search"] {
	min-width: min(360px, 70vw);
}

.icpl-intra-ledger-table-wrap {
	overflow-x: auto;
	width: 100%;
}

.icpl-intra-ledger-table {
	border-collapse: collapse;
	min-width: 820px;
	width: 100%;
}

.icpl-intra-ledger-table th,
.icpl-intra-ledger-table td {
	border-bottom: 1px solid #dbe4ec;
	padding: 11px 12px;
	text-align: left;
	vertical-align: top;
}

.icpl-intra-ledger-table th {
	background: #f4f7f9;
	color: #334155;
	font-size: 13px;
}

.icpl-intra-ledger-row-actions {
	white-space: nowrap;
}

.icpl-intra-ledger-row-actions a + a {
	margin-left: 8px;
}

.icpl-intra-ledger-form-card,
.icpl-intra-ledger-detail {
	background: #fff;
	border: 1px solid #d9e2ea;
	border-radius: 12px;
	padding: 20px;
}

.icpl-intra-ledger-form-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(220px, 1fr));
}

.icpl-intra-ledger-form-field {
	display: grid;
	gap: 6px;
}

.icpl-intra-ledger-form-field > span:first-child {
	font-weight: 700;
}

.icpl-intra-ledger-form-field > span strong {
	color: #b42318;
	font-size: 11px;
}

.icpl-intra-ledger-form-field input:not([type="checkbox"]),
.icpl-intra-ledger-form-field select,
.icpl-intra-ledger-form-field textarea {
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 7px;
	box-sizing: border-box;
	font: inherit;
	max-width: none;
	padding: 9px 10px;
	width: 100%;
}

.icpl-intra-ledger-form-field.is-wide {
	grid-column: 1 / -1;
}

.icpl-intra-ledger-form-field[hidden],
.icpl-intra-ledger-form-section[hidden] {
	display: none !important;
}

.icpl-intra-ledger-field-help {
	color: #64748b;
}

.icpl-intra-ledger-form-field small {
	color: #64748b;
}

.icpl-intra-ledger-form-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 18px;
}

.icpl-intra-ledger-detail-list {
	display: grid;
	grid-template-columns: minmax(140px, 220px) minmax(240px, 1fr);
	margin: 0 0 20px;
}

.icpl-intra-ledger-detail-list dt,
.icpl-intra-ledger-detail-list dd {
	border-bottom: 1px solid #dbe4ec;
	margin: 0;
	padding: 11px 12px;
}

.icpl-intra-ledger-detail-list dt {
	background: #f4f7f9;
	font-weight: 700;
}

.icpl-intra-ledger-secret {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.icpl-intra-ledger-secret code {
	overflow-wrap: anywhere;
}

.icpl-intra-ledger-history {
	margin: 18px 0;
}

.icpl-intra-ledger-history summary {
	cursor: pointer;
	font-weight: 700;
}

.icpl-intra-ledger-history-list {
	display: grid;
	gap: 7px;
	margin: 10px 0 0 20px;
}

.icpl-intra-ledger-delete {
	background: transparent;
	border: 0;
	color: #b42318;
	cursor: pointer;
	padding: 8px 0;
	text-decoration: underline;
}

.icpl-intra-ledger-footer-links {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
}

.icpl-intra-ledger-footer-links a {
	align-items: center;
	background: rgba(255, 255, 255, .1);
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 8px;
	display: inline-flex;
	height: 36px;
	justify-content: center;
	transition: background .15s ease, transform .15s ease;
	width: 36px;
}

.icpl-intra-ledger-footer-links a:hover,
.icpl-intra-ledger-footer-links a:focus {
	background: rgba(255, 255, 255, .2);
	transform: translateY(-1px);
}

.icpl-intra-ledger-footer-links img {
	border-radius: 4px;
	height: 20px;
	object-fit: contain;
	width: 20px;
}

.icpl-intra-ledger-footer-links .icpl-intra-ledger-footer-all {
	color: #fff;
	font-size: 20px;
	text-decoration: none;
}

@media (max-width: 720px) {
	.icpl-intra-ledger-heading,
	.icpl-intra-ledger-search {
		align-items: stretch;
		flex-direction: column;
	}

	.icpl-intra-ledger-form-grid,
	.icpl-intra-ledger-detail-list {
		grid-template-columns: 1fr;
	}

	.icpl-intra-ledger-form-field.is-wide {
		grid-column: auto;
	}

	.icpl-intra-ledger-detail-list dt {
		border-bottom: 0;
		padding-bottom: 3px;
	}

	.icpl-intra-ledger-detail-list dd {
		padding-top: 5px;
	}
}

/* Keep the responsive ledger layout authoritative over the legacy rules above. */
.icpl-intra-ledger-search input[type="search"] {
	min-width: 0;
	width: 100%;
}
.icpl-intra-ledger-form-actions {
	margin: 0 -4px -4px;
}
@media (min-width: 1180px) {
	.icpl-intra-ledger-form-grid {
		grid-template-columns: repeat(3, minmax(200px, 1fr));
	}
	.icpl-intra-ledger-form-field.is-wide {
		grid-column: 1 / -1;
	}
}


/* Information-equipment filters, sorting and images */
.icpl-intra-ledger-search-order {
	flex: 0 0 105px;
}
.icpl-intra-ledger-search-check {
	align-items: center !important;
	align-self: end;
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 4px;
	display: flex !important;
	gap: 7px !important;
	min-height: 40px;
	padding: 7px 10px;
	white-space: nowrap;
}
.icpl-intra-ledger-search-check input {
	margin: 0;
}
.icpl-intra-ledger-search-check > span {
	color: #334155 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
}
.icpl-intra-ledger-sortable > a {
	align-items: center;
	color: inherit;
	display: inline-flex;
	gap: 5px;
	text-decoration: none;
}
.icpl-intra-ledger-sortable > a:hover,
.icpl-intra-ledger-sortable > a:focus {
	color: var(--icpl-ledger-accent, #2457d6);
}
.icpl-intra-ledger-sort-indicator {
	color: #64748b;
	font-size: 10px;
	line-height: 1;
}
.icpl-intra-ledger-sortable[aria-sort="ascending"] .icpl-intra-ledger-sort-indicator,
.icpl-intra-ledger-sortable[aria-sort="descending"] .icpl-intra-ledger-sort-indicator {
	color: var(--icpl-ledger-accent, #2457d6);
}
.icpl-intra-ledger-table .icpl-intra-ledger-image-column {
	box-sizing: border-box;
	max-width: 88px;
	min-width: 88px;
	text-align: center;
	width: 88px;
}
.icpl-intra-ledger-table .icpl-intra-ledger-name-column {
	min-width: 180px;
}

.icpl-intra-ledger-service-title {
	align-items: center;
	display: inline-flex;
	gap: 6px;
}

.icpl-intra-ledger-service-heading {
	align-items: center;
	display: inline-flex;
	font-size: clamp(28px, 3vw, 36px) !important;
	gap: 12px;
	line-height: 1.2 !important;
}

.icpl-intra-ledger-service-heading .icpl-intra-ledger-platform-favicon,
.icpl-intra-ledger-service-heading .icpl-intra-ledger-platform-favicon img,
.icpl-intra-ledger-service-heading .icpl-intra-ledger-favicon-fallback {
	height: 1.2em;
	width: 1.2em;
}

.icpl-intra-ledger-service-heading .icpl-intra-ledger-platform-favicon {
	flex-basis: 1.2em;
}

.icpl-intra-ledger-service-heading .icpl-intra-ledger-favicon-fallback {
	font-size: 1.2em;
}

.icpl-intra-ledger-platform-favicon {
	align-items: center;
	display: inline-flex;
	flex: 0 0 20px;
	height: 20px;
	justify-content: center;
	width: 20px;
}

.icpl-intra-ledger-platform-favicon img {
	height: 20px;
	object-fit: contain;
	width: 20px;
}

.icpl-intra-ledger-platform-favicon img.is-resolving {
	opacity: 0;
}
.icpl-intra-ledger-table.has-equipment-images th:first-child,
.icpl-intra-ledger-table.has-equipment-images td:first-child {
	min-width: 88px;
}
.icpl-intra-ledger-thumbnail,
.icpl-intra-ledger-image-placeholder {
	background: #f8fafc;
	border: 1px solid #d8dee8;
	border-radius: 4px;
	box-sizing: border-box;
	display: inline-flex;
	height: 54px;
	object-fit: contain;
	vertical-align: middle;
	width: 72px;
}
.icpl-intra-ledger-image-placeholder {
	align-items: center;
	color: #94a3b8;
	justify-content: center;
}
.icpl-intra-ledger-image-placeholder .dashicons {
	font-size: 22px;
	height: 22px;
	width: 22px;
}
.icpl-intra-ledger-form-field.is-image {
	grid-column: 1 / -1;
}
.icpl-intra-ledger-image-input {
	display: grid;
	gap: 8px;
	justify-items: start;
}
.icpl-intra-ledger-image-sources {
	align-items: end;
	display: grid;
	gap: 10px;
	grid-template-columns: minmax(220px, 320px) auto minmax(360px, 1fr);
	width: 100%;
}
.icpl-intra-ledger-image-source {
	display: grid;
	gap: 5px;
	width: 100%;
}
.icpl-intra-ledger-image-source > span {
	color: #475569;
	font-size: 12px;
	font-weight: 700;
}
.icpl-intra-ledger-image-source input[type="url"] {
	width: 100%;
}
.icpl-intra-ledger-image-source-separator {
	color: #94a3b8;
	font-size: 12px;
	padding-bottom: 11px;
}
.icpl-intra-ledger-image-preview {
	background: #f8fafc;
	border: 1px solid #d8dee8;
	border-radius: 4px;
	display: inline-flex;
	padding: 6px;
}
.icpl-intra-ledger-image-preview img {
	height: auto;
	max-height: 240px;
	max-width: min(420px, 100%);
	object-fit: contain;
}
.icpl-intra-ledger-image-input input[type="file"] {
	max-width: 100%;
}
.icpl-intra-ledger-image-input small {
	color: #64748b;
}
.icpl-intra-ledger-image-remove {
	align-items: center;
	display: flex;
	font-size: 13px;
	gap: 6px;
}
.icpl-intra-ledger-detail-image {
	background: #f8fafc;
	border: 1px solid #d8dee8;
	border-radius: 4px;
	height: auto;
	max-height: 560px;
	max-width: min(760px, 100%);
	object-fit: contain;
	padding: 6px;
}
.icpl-intra-ledger-views {
	background: #fff;
	border: 1px solid var(--icpl-ledger-line, #d8dee8);
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	margin: 0 0 14px;
}
.icpl-intra-ledger-view-link {
	border-right: 1px solid var(--icpl-ledger-line, #d8dee8);
	color: #344054;
	font-weight: 600;
	padding: 9px 13px;
	text-decoration: none;
}
.icpl-intra-ledger-view-link:hover,
.icpl-intra-ledger-view-link:focus,
.icpl-intra-ledger-view-link.is-active {
	background: var(--icpl-ledger-accent-soft, #eef3ff);
	color: var(--icpl-ledger-accent, #2457d6);
}
.icpl-intra-ledger-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}
.icpl-intra-ledger-tags > span {
	background: #eef2f6;
	border: 1px solid #d8dee8;
	border-radius: 999px;
	font-size: 12px;
	padding: 2px 8px;
}
.icpl-intra-ledger-relations {
	display: grid;
	gap: 10px;
}

/* Final workspace cascade: override legacy tab rules. */
body .icpl-intra-mypage { left: 50%; margin: 0 0 0 -50vw; max-width: none; min-height: calc(100vh - 48px); padding: 14px clamp(14px, 2vw, 30px) 24px; width: 100vw; }
body .icpl-intra-mypage .icpl-intra-tabs { display: grid; gap: clamp(12px, 1.4vw, 20px); grid-template-columns: minmax(190px, 220px) minmax(0, 1fr); margin-top: 0; }
body .icpl-intra-mypage .icpl-intra-tab-list { align-self: start; border: 1px solid var(--icpl-workspace-line); border-radius: 10px; display: flex; flex-direction: column; gap: 3px; margin: 0; padding: 6px; }
body .icpl-intra-mypage .icpl-intra-tab-list label { border: 0; border-radius: 7px; display: grid; flex: none; grid-template-columns: 30px minmax(0, 1fr) auto; min-height: 46px; padding: 6px 8px; text-align: left; }
body .icpl-intra-mypage .icpl-intra-tab-list label::before { height: 30px; width: 30px; }
body #icpl_intra_tab_profile:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_profile"],
body #icpl_intra_tab_devices:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_devices"],
body #icpl_intra_tab_related:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_related"],
body #icpl_intra_tab_attendance:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_attendance"],
body #icpl_intra_tab_sites:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_sites"],
body #icpl_intra_tab_tasks:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_tasks"],
body #icpl_intra_tab_approvals:checked ~ .icpl-intra-tab-list label[for="icpl_intra_tab_approvals"] { margin: 0; min-height: 46px; padding: 6px 8px; }
body .icpl-intra-mypage .icpl-intra-tab-panel { border-radius: 10px; grid-column: 2; min-width: 0; padding: clamp(14px, 1.5vw, 22px); }
body .icpl-intra-mypage .icpl-intra-tab-list label small { display: block; }
body #icpl_intra_tab_profile:checked ~ .icpl-intra-tab-profile {
	align-items: start;
	display: grid;
	gap: 16px;
	grid-template-columns: minmax(190px, 230px) minmax(0, 1fr);
}
body .icpl-intra-tab-profile .icpl-intra-mypage-summary {
	align-items: center;
	flex-direction: column;
	gap: 10px;
	margin: 0;
	padding: 14px;
	text-align: center;
}
body .icpl-intra-tab-profile .icpl-intra-profile-photo,
body .icpl-intra-tab-profile .icpl-intra-profile-photo img,
body .icpl-intra-tab-profile .icpl-intra-profile-photo-placeholder { flex-basis: 86px; height: 86px; width: 86px; }
body .icpl-intra-tab-profile .icpl-intra-photo-form { margin: 0; max-width: 100%; }
body .icpl-intra-tab-profile .icpl-intra-photo-form input[type="file"] { font-size: 11px; margin: 0 0 7px; max-width: 100%; }
body .icpl-intra-tab-profile .icpl-intra-photo-form p { font-size: 10px; margin: 5px 0 0; }
body .icpl-intra-tab-profile .icpl-intra-profile-edit-form { margin: 0; min-width: 0; }
body .icpl-intra-tab-profile .icpl-intra-mypage-profile { margin: 0; }
body .icpl-intra-tab-profile .icpl-intra-mypage-profile th,
body .icpl-intra-tab-profile .icpl-intra-mypage-profile td { padding: 8px 12px; }
body .icpl-intra-tab-profile .icpl-intra-mypage-profile th { width: 130px; }
body .icpl-intra-tab-profile .icpl-intra-profile-actions { margin: 8px 0 0; }
body .icpl-intra-tab-profile > .icpl-intra-mypage-profile,
body .icpl-intra-tab-profile > .icpl-intra-mypage-pending { grid-column: 2; margin: 0; }
body .icpl-intra-tab-devices .icpl-intra-device-list { gap: 10px; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
body .icpl-intra-tab-devices .icpl-intra-device-item { padding: 11px; }
body .icpl-intra-tab-devices .icpl-intra-device-meta { margin: 7px 0; }
body .icpl-intra-tab-sites .icpl-intra-site-access > p { margin-bottom: 8px; }
body .icpl-intra-tab-sites .icpl-intra-site-access-table { margin-top: 8px; }
body .icpl-intra-tab-sites .icpl-intra-site-access-table th,
body .icpl-intra-tab-sites .icpl-intra-site-access-table td { padding: 8px 10px; }
body .icpl-intra-my-records-heading { align-items: end; border-bottom: 1px solid var(--icpl-workspace-line); display: flex; justify-content: space-between; margin-bottom: 14px; padding-bottom: 12px; }
body .icpl-intra-my-records-heading h2 { font-size: clamp(18px, 1.5vw, 23px); margin: 0 0 3px; }
body .icpl-intra-my-records-heading p { color: var(--icpl-workspace-muted); font-size: 12px; margin: 0; }
body .icpl-intra-my-record-groups { display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)); }
body .icpl-intra-my-record-group { border: 1px solid var(--icpl-workspace-line); border-radius: 9px; min-width: 0; overflow: hidden; }
body .icpl-intra-my-record-group > header { align-items: center; background: #f7f9fb; border-bottom: 1px solid var(--icpl-workspace-line); display: grid; gap: 8px; grid-template-columns: 24px minmax(0, 1fr) auto; padding: 9px 11px; }
body .icpl-intra-my-record-group > header > .dashicons { color: var(--icpl-workspace-accent); font-size: 20px; height: 20px; width: 20px; }
body .icpl-intra-my-record-group h3 { font-size: 14px; margin: 0; }
body .icpl-intra-my-record-count { background: #e7f2f0; border-radius: 999px; color: #105e57; font-size: 11px; font-weight: 700; padding: 3px 8px; }
body .icpl-intra-my-record-list { display: grid; }
body .icpl-intra-my-record-item { align-items: center; border-bottom: 1px solid #edf1f5; color: var(--icpl-workspace-ink); display: grid; gap: 12px; grid-template-columns: minmax(150px, .85fr) minmax(180px, 1.15fr) 18px; padding: 10px 11px; text-decoration: none; transition: background .15s ease; }
body .icpl-intra-my-record-item:last-child { border-bottom: 0; }
body .icpl-intra-my-record-item:hover,
body .icpl-intra-my-record-item:focus { background: #f4f9f8; color: var(--icpl-workspace-ink); text-decoration: none; }
body .icpl-intra-my-record-main { display: grid; gap: 3px; min-width: 0; }
body .icpl-intra-my-record-main strong { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body .icpl-intra-my-record-role { color: var(--icpl-workspace-accent); font-size: 10px; font-weight: 700; }
body .icpl-intra-my-record-meta { display: flex; flex-wrap: wrap; gap: 5px 12px; min-width: 0; }
body .icpl-intra-my-record-meta > span { color: #475467; display: grid; font-size: 11px; line-height: 1.3; }
body .icpl-intra-my-record-meta small { color: #98a2b3; font-size: 9px; }
body .icpl-intra-my-record-item > .dashicons { color: #98a2b3; font-size: 17px; height: 17px; width: 17px; }
body .icpl-intra-my-records-empty { align-items: center; background: #f7faf9; border: 1px dashed #cbdad7; border-radius: 9px; color: var(--icpl-workspace-muted); display: grid; gap: 5px; justify-items: center; padding: clamp(30px, 6vh, 60px) 20px; text-align: center; }
body .icpl-intra-my-records-empty > .dashicons { color: var(--icpl-workspace-accent); font-size: 30px; height: 30px; width: 30px; }
body .icpl-intra-my-records-empty strong { color: var(--icpl-workspace-ink); font-size: 14px; }
body .icpl-intra-my-records-empty > span:last-child { font-size: 11px; }
@media (max-width: 900px) {
	body .icpl-intra-mypage .icpl-intra-tabs { display: block; }
	body .icpl-intra-mypage .icpl-intra-tab-list { flex-direction: row; margin-bottom: 16px; overflow-x: auto; }
	body .icpl-intra-mypage .icpl-intra-tab-list label { flex: 0 0 auto; grid-template-columns: 30px auto auto; min-height: 48px; padding: 7px 10px; }
	body .icpl-intra-mypage .icpl-intra-tab-list label small { display: none; }
	body #icpl_intra_tab_profile:checked ~ .icpl-intra-tab-profile { display: block; }
	body .icpl-intra-tab-profile .icpl-intra-mypage-summary { align-items: flex-start; flex-direction: row; margin-bottom: 14px; text-align: left; }
}
@media (max-width: 600px) {
	body .icpl-intra-mypage { min-height: 0; padding: 8px 8px 20px; }
	body .icpl-intra-tab-profile .icpl-intra-mypage-summary { align-items: center; flex-direction: column; text-align: center; }
	body .icpl-intra-my-record-groups { grid-template-columns: 1fr; }
	body .icpl-intra-my-record-item { align-items: start; grid-template-columns: minmax(0, 1fr) 18px; }
	body .icpl-intra-my-record-meta { grid-column: 1; grid-row: 2; }
	body .icpl-intra-my-record-item > .dashicons { grid-column: 2; grid-row: 1 / span 2; }
}
.icpl-intra-ledger-relation-row {
	background: #f8fafc;
	border: 1px solid var(--icpl-ledger-line, #d8dee8);
	display: grid;
	gap: 9px;
	grid-template-columns: repeat(3, minmax(180px, 1fr));
	padding: 11px;
}
.icpl-intra-ledger-relation-row label {
	display: grid;
	font-weight: 600;
	gap: 4px;
}
.icpl-intra-ledger-relation-row label > span {
	font-size: 12px;
}
.icpl-intra-ledger-relation-row input,
.icpl-intra-ledger-relation-row select,
.icpl-intra-ledger-relation-row textarea {
	font-weight: 400;
	width: 100%;
}
.icpl-intra-ledger-relation-row .is-wide {
	grid-column: 1 / -1;
}
.icpl-intra-ledger-relation-row > .button-link-delete {
	justify-self: start;
}
.icpl-intra-ledger-relation-list {
	display: grid;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.icpl-intra-ledger-relation-list li {
	align-items: center;
	border-bottom: 1px solid #e3e7ed;
	display: grid;
	gap: 5px 12px;
	grid-template-columns: minmax(150px, 230px) minmax(180px, 1fr) auto;
	padding: 8px 0;
}
.icpl-intra-ledger-relation-list li:last-child {
	border-bottom: 0;
}
.icpl-intra-ledger-relation-list small {
	color: #667085;
}
.icpl-intra-ledger-relation-list p {
	grid-column: 2 / -1;
	margin: 0;
}
.icpl-intra-ledger-relation-type {
	font-weight: 700;
}
@media (max-width: 720px) {
	.icpl-intra-ledger-search-order,
	.icpl-intra-ledger-search-check {
		flex-basis: 100%;
	}
	.icpl-intra-ledger-search-check {
		justify-content: flex-start;
	}
	.icpl-intra-ledger-table .icpl-intra-ledger-image-column {
		max-width: none;
		width: 100%;
	}
	.icpl-intra-ledger-image-sources {
		grid-template-columns: 1fr;
	}
	.icpl-intra-ledger-image-source-separator {
		padding: 0;
	}
	.icpl-intra-ledger-relation-row,
	.icpl-intra-ledger-relation-list li {
		grid-template-columns: 1fr;
	}
	.icpl-intra-ledger-relation-list p {
		grid-column: auto;
	}
}

/* Production-management-aligned ledger workspace (final cascade) */
.icpl-has-portal-shell .icpl-intra-ledger-workspace {
	--icpl-ledger-shell-gutter: 20px;
	min-height: 72vh;
	padding: 0 0 36px;
	background: transparent;
}
.icpl-has-portal-shell .icpl-intra-ledger-workspace > h1,
.icpl-has-portal-shell .icpl-intra-ledger-workspace > .icpl-intra-ledger-dashboard-intro {
	padding: 18px var(--icpl-ledger-shell-gutter);
	margin: 0;
	border-bottom: 1px solid #e5e7eb;
	background: #fff;
}
.icpl-has-portal-shell .icpl-intra-ledger-workspace > .icpl-intra-ledger-button {
	margin: 16px var(--icpl-ledger-shell-gutter);
}
.icpl-has-portal-shell .icpl-intra-ledger-heading {
	padding-inline: var(--icpl-ledger-shell-gutter, 20px);
}
.icpl-intra-ledger-workspace,
.icpl-intra-tab-ledgers {
	--icpl-ledger-ink: #172033;
	--icpl-ledger-muted: #667085;
	--icpl-ledger-line: #d8dee8;
	--icpl-ledger-accent: #2457d6;
	--icpl-ledger-accent-soft: #eef3ff;
	background: #f3f5f7;
	box-sizing: border-box;
	color: var(--icpl-ledger-ink);
	margin: 0;
	max-width: none;
	min-height: 72vh;
	padding: 14px 18px 36px;
	width: 100%;
}
.icpl-intra-ledger-workspace *,
.icpl-intra-tab-ledgers * {
	box-sizing: border-box;
}
.icpl-intra-admin-wrap .icpl-intra-ledger-workspace {
	width: 100%;
}
.icpl-intra-ledger-workspace > h1 {
	font-size: clamp(21px, 2.4vw, 28px);
	line-height: 1.25;
	margin: 2px 0 14px;
}
.icpl-intra-ledger-heading {
	margin: 0 0 14px;
}
.icpl-intra-ledger-heading h1,
.icpl-intra-ledger-heading h2 {
	font-size: clamp(21px, 2.4vw, 28px);
	line-height: 1.25;
	margin: 2px 0 5px;
}
.icpl-intra-ledger-heading p {
	color: var(--icpl-ledger-muted);
}
.icpl-intra-ledger-dashboard {
	background: #fff;
	border: 1px solid var(--icpl-ledger-line);
	display: grid;
	gap: 0;
	grid-template-columns: 1fr;
}
.icpl-intra-ledger-card {
	align-items: center;
	border: 0;
	border-bottom: 1px solid #e3e7ed;
	border-radius: 0;
	box-shadow: none;
	display: grid;
	gap: 12px;
	grid-template-columns: 30px minmax(0, 1fr);
	padding: 12px 15px;
	transform: none;
}
.icpl-intra-ledger-card:last-child {
	border-bottom: 0;
}
.icpl-intra-ledger-card:hover,
.icpl-intra-ledger-card:focus {
	background: #f5f8fd;
	border-color: #e3e7ed;
	box-shadow: none;
	transform: none;
}
.icpl-intra-ledger-card > .dashicons {
	color: var(--icpl-ledger-accent);
	font-size: 24px;
	height: 24px;
	width: 24px;
}
.icpl-intra-ledger-card > span:last-child {
	align-items: center;
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(190px, 280px) minmax(260px, 1fr);
}
.icpl-intra-ledger-card strong {
	font-size: 15px;
}
.icpl-intra-ledger-card small {
	margin: 0;
}
.icpl-intra-ledger-search {
	border-color: var(--icpl-ledger-line);
	border-radius: 4px;
	margin-bottom: 10px;
	padding: 8px 10px;
}
.icpl-intra-ledger-search input[type="search"] {
	min-width: 0;
	width: 100%;
}
.icpl-intra-ledger-table-wrap {
	border-color: var(--icpl-ledger-line);
	border-radius: 4px;
	box-shadow: none;
}
.icpl-intra-ledger-form-card,
.icpl-intra-ledger-detail,
.icpl-intra-card.icpl-intra-wide-card.icpl-intra-ledger-form-card,
.icpl-intra-card.icpl-intra-wide-card.icpl-intra-ledger-detail {
	margin: 0;
	max-width: none;
	width: 100%;
}
.icpl-intra-ledger-form-card,
.icpl-intra-ledger-detail {
	border-color: var(--icpl-ledger-line);
	border-radius: 4px;
	padding: 14px;
}
.icpl-intra-ledger-form-section {
	background: #fff;
	border-color: var(--icpl-ledger-line);
	border-radius: 4px;
	padding: 14px;
}
.icpl-intra-ledger-form-section legend {
	border: 0;
	border-radius: 0;
	color: var(--icpl-ledger-ink);
	font-size: 14px;
	padding: 0 4px;
}
.icpl-intra-ledger-form-field {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
}
.icpl-intra-ledger-form-field:focus-within {
	border-color: transparent;
	box-shadow: none;
}
.icpl-intra-ledger-form-field input:not([type="checkbox"]):focus,
.icpl-intra-ledger-form-field select:focus,
.icpl-intra-ledger-form-field textarea:focus {
	border-color: var(--icpl-ledger-accent);
	box-shadow: 0 0 0 1px var(--icpl-ledger-accent);
	outline: 0;
}
.icpl-intra-ledger-detail-section {
	border-radius: 4px;
}
.icpl-intra-ledger-detail-section h3 {
	background: #e9edf2;
}
@media (min-width: 1100px) {
	.icpl-intra-ledger-form-grid {
		grid-template-columns: repeat(3, minmax(190px, 1fr));
	}
}
@media (min-width: 1500px) {
	.icpl-intra-ledger-form-grid {
		grid-template-columns: repeat(4, minmax(190px, 1fr));
	}
}
@media (max-width: 720px) {
	.icpl-intra-ledger-workspace,
	.icpl-intra-tab-ledgers {
		min-height: 0;
		padding: 12px;
	}
	.icpl-intra-ledger-card > span:last-child {
		display: block;
	}
	.icpl-intra-ledger-card small {
		margin-top: 4px;
	}
}
.icpl-intra-ledger-login-column {
	min-width: 180px;
}

.icpl-intra-ledger-login-value,
.icpl-intra-ledger-access-links {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	max-width: 100%;
}

.icpl-intra-ledger-login-value {
	padding: 2px 4px;
	border: 0;
	border-radius: 3px;
	background: transparent;
	color: inherit;
	font: inherit;
	text-align: left;
	cursor: copy;
}

.icpl-intra-ledger-login-value:hover,
.icpl-intra-ledger-login-value:focus {
	background: #e8eef5;
	outline: 1px solid #94a3b8;
}

.icpl-intra-ledger-login-value.is-copied {
	background: #dcfce7;
	outline-color: #22c55e;
}

.icpl-intra-ledger-login-value code {
	min-width: 0;
	overflow-wrap: anywhere;
	white-space: normal;
}

.icpl-intra-ledger-site-request-link {
	background: #eff6ff;
	border: 1px solid #bfdbfe;
	border-radius: 4px;
	display: inline-flex;
	font-weight: 700;
	padding: 3px 7px;
	text-decoration: none;
}

.icpl-intra-ledger-access-method-label {
	color: #64748b;
}

.icpl-intra-ledger-site-request-notice {
	align-items: center;
	background: #eff6ff;
	border-left: 4px solid #2563eb;
	display: flex;
	flex-wrap: wrap;
	gap: 12px 24px;
	justify-content: space-between;
	margin: 16px 0 24px;
	padding: 14px 16px;
}

.icpl-intra-ledger-site-request-notice p {
	margin: 4px 0 0;
}

.icpl-intra-ledger-favicon-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 0;
	border-radius: 4px;
	background: transparent;
	color: #334155;
	text-decoration: none;
}

.icpl-intra-ledger-favicon-link img {
	width: 20px;
	height: 20px;
	object-fit: contain;
}

.icpl-intra-ledger-favicon-link img.is-resolving {
	opacity: 0;
}

.icpl-intra-ledger-favicon-fallback {
	width: 20px;
	height: 20px;
	color: #94a3b8;
	font-size: 20px;
	line-height: 1;
}

.icpl-intra-ledger-admin-access-icon {
	height: 20px;
	font-size: 20px;
	line-height: 1;
	width: 20px;
}

.icpl-intra-ledger-favicon-link:hover,
.icpl-intra-ledger-favicon-link:focus {
	background: #e8eef5;
	box-shadow: 0 0 0 1px #94a3b8;
	color: #0f172a;
}

/* Balanced responsive ledger detail columns */
.icpl-intra-ledger-detail {
	container-type: inline-size;
}

.icpl-intra-ledger-detail-sections {
	column-count: 1;
	column-gap: 10px;
	margin: 0 0 10px;
}

.icpl-intra-ledger-detail-sections > .icpl-intra-ledger-detail-section {
	background: #f3f6f9;
	border: 0;
	border-radius: 8px;
	break-inside: avoid;
	box-sizing: border-box;
	display: inline-block;
	margin: 0 0 10px;
	overflow: hidden;
	padding: 10px;
	vertical-align: top;
	width: 100%;
}

.icpl-intra-ledger-detail-sections .icpl-intra-ledger-detail-section h3 {
	background: transparent;
	border: 0;
	border-left: 3px solid var(--icpl-ledger-accent, #2457d6);
	font-size: 15px;
	line-height: 1.4;
	margin: 0 0 8px;
	padding: 1px 0 1px 9px;
}

.icpl-intra-ledger-detail-services .icpl-intra-ledger-detail-section h3 {
	align-items: center;
	border-left: 0;
	display: flex;
	font-size: 17px;
	gap: 8px;
	line-height: 1.35;
	padding-left: 0;
}

.icpl-intra-ledger-detail-services .icpl-intra-ledger-detail-section-icon {
	color: var(--icpl-ledger-accent, #2457d6);
	flex: 0 0 20px;
	font-size: 20px;
	height: 20px;
	line-height: 1;
	width: 20px;
}

.icpl-intra-ledger-detail-sections .icpl-intra-ledger-detail-list {
	background: transparent;
	display: grid;
	gap: 7px;
	grid-template-columns: 1fr;
}

.icpl-intra-ledger-detail-item {
	background: #fff;
	border: 0;
	border-radius: 7px;
	box-shadow: none;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: auto 1fr;
	min-width: 0;
	padding: 7px 9px;
}

.icpl-intra-ledger-detail-sections .icpl-intra-ledger-detail-item dt,
.icpl-intra-ledger-detail-sections .icpl-intra-ledger-detail-item dd {
	background: transparent;
	border-bottom: 0;
	min-width: 0;
	overflow-wrap: anywhere;
	padding: 0;
}

.icpl-intra-ledger-detail-sections .icpl-intra-ledger-detail-item dt {
	color: #475569;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 3px;
}

.icpl-intra-ledger-detail-sections .icpl-intra-ledger-detail-item dd {
	color: #172033;
	font-size: 14px;
	line-height: 1.45;
}

.icpl-intra-ledger-detail-services .icpl-intra-ledger-detail-item {
	align-items: center;
	column-gap: 10px;
	grid-template-columns: max-content minmax(0, 1fr);
	grid-template-rows: auto;
}

.icpl-intra-ledger-detail-services .icpl-intra-ledger-detail-item dt {
	margin: 0;
}

.icpl-intra-ledger-detail-services :is(
	.icpl-intra-ledger-detail-field-access_guide,
	.icpl-intra-ledger-detail-field-technical_summary,
	.icpl-intra-ledger-detail-field-monitoring,
	.icpl-intra-ledger-detail-field-backup,
	.icpl-intra-ledger-detail-field-incident_contact,
	.icpl-intra-ledger-detail-field-notes
) {
	align-items: start;
	grid-template-columns: minmax(0, 1fr);
}

.icpl-intra-ledger-detail-services :is(
	.icpl-intra-ledger-detail-field-access_guide,
	.icpl-intra-ledger-detail-field-technical_summary,
	.icpl-intra-ledger-detail-field-monitoring,
	.icpl-intra-ledger-detail-field-backup,
	.icpl-intra-ledger-detail-field-incident_contact,
	.icpl-intra-ledger-detail-field-notes
) dt {
	margin: 0 0 3px;
}

.icpl-intra-ledger-detail-sections .icpl-intra-ledger-relations-detail > h4 {
	font-size: 13px;
	margin: 5px 0 7px;
}

.icpl-intra-ledger-detail-sections .icpl-intra-ledger-relations-detail .icpl-intra-ledger-relation-list {
	gap: 7px;
}

.icpl-intra-ledger-detail-sections .icpl-intra-ledger-relations-detail .icpl-intra-ledger-relation-list li {
	background: #fff;
	border: 0;
	border-radius: 7px;
	padding: 7px 9px;
}

.icpl-intra-ledger-detail-services .icpl-intra-ledger-relations-detail .icpl-intra-ledger-relation-list li {
	align-items: start;
	grid-template-columns: max-content minmax(0, 1fr);
}

.icpl-intra-ledger-detail-services .icpl-intra-ledger-relations-detail .icpl-intra-ledger-relation-list small,
.icpl-intra-ledger-detail-services .icpl-intra-ledger-relations-detail .icpl-intra-ledger-relation-list p {
	grid-column: 1 / -1;
}

.icpl-intra-ledger-detail-services .icpl-intra-ledger-relations-detail .icpl-intra-ledger-relation-list small {
	line-height: 1.45;
}

@container (min-width: 760px) {
	.icpl-intra-ledger-detail-sections {
		column-count: 2;
	}
}

@container (min-width: 1180px) {
	.icpl-intra-ledger-detail-sections {
		column-count: 3;
	}
}

@media (max-width: 720px) {
	.icpl-intra-ledger-detail-sections > .icpl-intra-ledger-detail-section {
		padding: 9px;
	}

	.icpl-intra-ledger-detail-services .icpl-intra-ledger-detail-item,
	.icpl-intra-ledger-detail-services .icpl-intra-ledger-relations-detail .icpl-intra-ledger-relation-list li {
		align-items: start;
		grid-template-columns: minmax(0, 1fr);
	}

	.icpl-intra-ledger-detail-services .icpl-intra-ledger-detail-item dt {
		margin: 0 0 3px;
	}

	.icpl-intra-ledger-detail-services .icpl-intra-ledger-relations-detail .icpl-intra-ledger-relation-list small,
	.icpl-intra-ledger-detail-services .icpl-intra-ledger-relations-detail .icpl-intra-ledger-relation-list p {
		grid-column: auto;
	}
}

/* Dependency map and final relation-editor cascade */
.icpl-intra-ledger-relation-row {
	background: #fff;
	display: block;
	padding: 0;
}

.icpl-intra-ledger-relation-row > summary {
	display: grid;
}

.icpl-intra-ledger-relation-row .icpl-intra-ledger-dependency-visual {
	font-size: 14px;
}

.icpl-intra-ledger-relation-row .icpl-intra-ledger-dependency-choice-grid input[type="radio"] {
	width: auto;
}

.icpl-intra-ledger-relations-detail:has(.icpl-intra-ledger-dependency-map) {
	column-span: all;
	display: block;
}

.icpl-intra-ledger-dependency-map {
	background: #fff;
	border: 1px solid #e1e6ee;
	border-radius: 8px;
	margin-bottom: 12px;
	padding: 12px;
}

.icpl-intra-ledger-dependency-map > h4 {
	font-size: 14px;
	margin: 0 0 4px;
}

.icpl-intra-ledger-dependency-map-legend {
	color: #667085;
	display: flex;
	flex-wrap: wrap;
	font-size: 11px;
	gap: 6px 14px;
	justify-content: flex-end;
	margin-bottom: 10px;
}

.icpl-intra-ledger-dependency-map-legend b {
	color: var(--icpl-ledger-accent, #2457d6);
	font-size: 15px;
}

.icpl-intra-ledger-dependency-flow {
	align-items: center;
	display: grid;
	gap: 10px;
	grid-template-columns: minmax(150px, 1fr) 34px minmax(190px, 1.15fr) 34px minmax(150px, 1fr);
}

.icpl-intra-ledger-dependency-node-group {
	display: grid;
	gap: 7px;
}

.icpl-intra-ledger-dependency-node,
.icpl-intra-ledger-dependency-side-group > div {
	align-items: center;
	display: flex;
	gap: 8px;
}

.icpl-intra-ledger-dependency-node {
	background: #f8fafc;
	border: 1px solid #dce2eb;
	color: var(--icpl-ledger-ink, #172033);
	min-width: 0;
	padding: 8px 9px;
	text-decoration: none;
}

a.icpl-intra-ledger-dependency-node:hover {
	background: #eef3ff;
	border-color: #aebff3;
}

.icpl-intra-ledger-dependency-node.is-current {
	background: #eef3ff;
	border: 2px solid var(--icpl-ledger-accent, #2457d6);
	padding: 11px;
}

.icpl-intra-ledger-dependency-node > span:last-child {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.icpl-intra-ledger-dependency-node strong,
.icpl-intra-ledger-dependency-node small {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.icpl-intra-ledger-dependency-node small,
.icpl-intra-ledger-dependency-empty {
	color: #667085;
	font-size: 11px;
}

.icpl-intra-ledger-dependency-empty {
	text-align: center;
}

.icpl-intra-ledger-dependency-connector,
.icpl-intra-ledger-dependency-side-symbol {
	color: var(--icpl-ledger-accent, #2457d6);
	font-size: 27px;
	font-weight: 700;
	text-align: center;
}

.icpl-intra-ledger-dependency-map-center {
	display: grid;
	grid-template-columns: minmax(200px, 360px);
	justify-content: center;
}

.icpl-intra-ledger-dependency-side-group {
	border-top: 1px dashed #d8dee8;
	display: grid;
	gap: 7px;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	margin-top: 11px;
	padding-top: 10px;
}

.icpl-intra-ledger-dependency-side-label {
	color: #667085;
	font-size: 11px;
	grid-column: 1 / -1;
}

.icpl-intra-ledger-dependency-side-group .icpl-intra-ledger-dependency-node {
	flex: 1;
}

.icpl-intra-ledger-dependency-side-group.is-unconfirmed .icpl-intra-ledger-dependency-node {
	border-style: dashed;
}

@media (max-width: 760px) {
	.icpl-intra-ledger-dependency-flow {
		grid-template-columns: 1fr;
	}

	.icpl-intra-ledger-dependency-connector {
		transform: rotate(90deg);
	}
}

/* Company Master: company-centred ledger relationship editor */
.icpl-intra-company-ledger-panel {
	--icpl-ledger-accent: #2457d6;
	--icpl-ledger-line: #d8dee8;
	--icpl-ledger-muted: #667085;
	color: #20384e;
}

.icpl-intra-company-ledger-head {
	align-items: center;
	border-bottom: 1px solid #e4eaf0;
	display: grid;
	gap: 12px;
	grid-template-columns: 42px minmax(0, 1fr) auto;
	padding-bottom: 18px;
}

.icpl-intra-company-ledger-head > .dashicons {
	align-items: center;
	background: #edf3ff;
	border-radius: 10px;
	color: #2457d6;
	display: inline-flex;
	font-size: 24px;
	height: 42px;
	justify-content: center;
	width: 42px;
}

.icpl-intra-company-ledger-head h2,
.icpl-intra-company-ledger-editor-head h3 {
	color: #20384e;
	margin: 0;
}

.icpl-intra-company-ledger-head h2 {
	font-size: 20px;
}

.icpl-intra-company-ledger-head p,
.icpl-intra-company-ledger-editor-head p {
	color: #667085;
	font-size: 12px;
	margin: 3px 0 0;
}

.icpl-intra-company-ledger-head > a,
.icpl-intra-company-ledger-editor button {
	background: #2457d6;
	border: 1px solid #2457d6;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	font-size: 13px;
	font-weight: 700;
	padding: 8px 13px;
	text-decoration: none;
}

.icpl-intra-company-ledger-head > a:hover,
.icpl-intra-company-ledger-editor button:hover {
	background: #1d46ad;
	color: #fff;
}

.icpl-intra-company-ledger-map {
	align-items: stretch;
	background: #f8fafc;
	border: 1px solid #e0e7ef;
	display: grid;
	gap: 20px;
	grid-template-columns: minmax(180px, 0.7fr) minmax(0, 1.8fr);
	margin-top: 18px;
	padding: 18px;
}

.icpl-intra-company-ledger-map > .icpl-intra-ledger-dependency-map-legend {
	grid-column: 1 / -1;
}

.icpl-intra-company-ledger-center {
	align-content: center;
	background: #fff;
	border: 2px solid #7c3aed;
	display: grid;
	gap: 4px;
	justify-items: center;
	min-height: 130px;
	padding: 16px;
	text-align: center;
}

.icpl-intra-company-ledger-center .dashicons {
	color: #7c3aed;
	font-size: 32px;
	height: 32px;
	width: 32px;
}

.icpl-intra-company-ledger-center strong {
	font-size: 16px;
}

.icpl-intra-company-ledger-center small,
.icpl-intra-company-ledger-item-copy small,
.icpl-intra-company-ledger-summary-copy small {
	color: #667085;
	font-size: 11px;
}

.icpl-intra-company-ledger-links {
	min-width: 0;
}

.icpl-intra-company-ledger-items {
	display: grid;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.icpl-intra-company-ledger-items > li {
	align-items: center;
	background: #fff;
	border: 1px solid #e0e7ef;
	display: grid;
	gap: 9px;
	grid-template-columns: 24px 30px minmax(0, 1fr);
	min-width: 0;
	padding: 10px 12px;
}

.icpl-intra-company-ledger-line {
	color: #7c3aed;
	font-size: 22px;
	font-weight: 700;
}

.icpl-intra-company-ledger-item-copy,
.icpl-intra-company-ledger-summary-copy {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.icpl-intra-company-ledger-item-copy > a,
.icpl-intra-company-ledger-item-copy > strong {
	color: #20384e;
	font-size: 14px;
	font-weight: 700;
	overflow-wrap: anywhere;
}

.icpl-intra-company-ledger-item-copy > span {
	color: #526274;
	font-size: 12px;
	margin-top: 3px;
}

.icpl-intra-company-ledger-empty,
.icpl-intra-company-ledger-readonly,
.icpl-intra-company-ledger-warning {
	background: #f8fafc;
	border: 1px dashed #c9d3df;
	color: #667085;
	margin: 16px 0 0;
	padding: 14px;
}

.icpl-intra-company-ledger-warning {
	background: #fff8e8;
	border-color: #e8c77a;
	color: #775b18;
}

.icpl-intra-company-ledger-history {
	border: 1px solid #e0e7ef;
	margin-top: 14px;
	padding: 0;
}

.icpl-intra-company-ledger-history > summary {
	cursor: pointer;
	font-weight: 700;
	padding: 11px 13px;
}

.icpl-intra-company-ledger-history > .icpl-intra-company-ledger-items {
	border-top: 1px solid #e0e7ef;
	padding: 10px;
}

.icpl-intra-company-ledger-notice {
	border-left: 4px solid #15803d;
	margin-top: 14px;
	padding: 10px 12px;
}

.icpl-intra-company-ledger-notice.is-success {
	background: #eefbf2;
	color: #166534;
}

.icpl-intra-company-ledger-notice.is-error {
	background: #fff1f2;
	border-left-color: #be123c;
	color: #9f1239;
}

.icpl-intra-company-ledger-editor {
	border-top: 2px solid #d8dee8;
	margin-top: 24px;
	padding-top: 20px;
}

.icpl-intra-company-ledger-edit-section .icpl-intra-company-ledger-editor {
	border-top: 0;
	margin-top: 0;
	padding-top: 0;
}

.icpl-intra-company-ledger-editor-head {
	align-items: center;
	display: flex;
	gap: 14px;
	justify-content: space-between;
	margin-bottom: 16px;
}

.icpl-intra-company-ledger-editor > h4 {
	font-size: 13px;
	margin: 0 0 8px;
}

.icpl-intra-company-ledger-relation-rows {
	display: grid;
	gap: 8px;
}

.icpl-intra-company-ledger-panel .icpl-intra-company-ledger-relation-row {
	background: #fff;
	border: 1px solid #d8dee8;
	display: block;
	padding: 0;
}

.icpl-intra-company-ledger-panel .icpl-intra-company-ledger-relation-row > summary {
	align-items: center;
	display: grid;
	gap: 10px;
	grid-template-columns: 38px minmax(0, 1fr) minmax(130px, auto) 16px;
	padding: 11px 12px;
}

.icpl-intra-company-ledger-panel .icpl-intra-company-ledger-relation-row > summary::after {
	grid-column: 4;
}

.icpl-intra-company-ledger-panel .icpl-intra-company-ledger-relation-row .icpl-intra-ledger-relation-row-body {
	border-top: 1px solid #d8dee8;
	padding: 14px;
}

.icpl-intra-company-ledger-panel .icpl-intra-ledger-relation-options-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.icpl-intra-company-ledger-panel .icpl-intra-ledger-relation-options-grid .is-wide {
	grid-column: 1 / -1;
}

.icpl-intra-company-ledger-panel .button-link-delete {
	background: transparent;
	border: 0;
	color: #b42318;
	margin-top: 10px;
	padding: 0;
}

.icpl-intra-company-ledger-picker {
	margin-top: 20px;
}

.icpl-intra-company-ledger-panel .icpl-intra-ledger-relation-candidate {
	border-radius: 0;
}

.icpl-intra-company-ledger-panel .icpl-intra-ledger-relation-candidate > span:not(.icpl-intra-ledger-relation-media-icon) {
	display: grid;
	gap: 2px;
}

.icpl-intra-company-ledger-panel .icpl-intra-ledger-relation-picker-actions button:disabled {
	cursor: not-allowed;
	opacity: 0.45;
}

.icpl-intra-company-ledger-editor-foot {
	display: flex;
	justify-content: flex-end;
	margin-top: 18px;
}

@media (max-width: 720px) {
	.icpl-intra-company-ledger-head {
		grid-template-columns: 38px minmax(0, 1fr);
	}

	.icpl-intra-company-ledger-head > a {
		grid-column: 1 / -1;
		text-align: center;
	}

	.icpl-intra-company-ledger-map {
		grid-template-columns: 1fr;
		padding: 12px;
	}

	.icpl-intra-company-ledger-center {
		min-height: 100px;
	}

	.icpl-intra-company-ledger-editor-head {
		align-items: stretch;
		flex-direction: column;
	}

	.icpl-intra-company-ledger-panel .icpl-intra-company-ledger-relation-row > summary {
		grid-template-columns: 34px minmax(0, 1fr) 16px;
	}

	.icpl-intra-company-ledger-panel .icpl-intra-company-ledger-relation-row > summary > [data-icpl-company-ledger-relation-summary] {
		grid-column: 2;
	}

	.icpl-intra-company-ledger-panel .icpl-intra-company-ledger-relation-row > summary::after {
		grid-column: 3;
		grid-row: 1 / span 2;
	}

	.icpl-intra-company-ledger-panel .icpl-intra-ledger-relation-options-grid,
	.icpl-intra-company-ledger-panel .icpl-intra-ledger-relation-picker-tools,
	.icpl-intra-company-ledger-panel .icpl-intra-ledger-relation-candidates {
		grid-template-columns: 1fr;
	}
}

/* Shared search/list contract, 2026-10-08. Kept scoped to ledger lists. */
body .icpl-intra-ledger-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 8px; background: #fff; border: 0; padding: 12px 0; }
body .icpl-intra-ledger-search-query { min-width: 0; width: auto; }
body .icpl-intra-ledger-search input[type="search"] { min-height: 44px; border-radius: 8px; }
body .icpl-intra-ledger-search button[type="submit"] { min-height: 44px; padding: 8px 20px; border: 1px solid #315da8; border-radius: 8px; background: #315da8; color: #fff; font-size: 14px; }
body .icpl-intra-ledger-search-details { grid-column: 1 / -1; min-width: 0; }
.icpl-intra-ledger-search-details > summary { min-height: 44px; box-sizing: border-box; padding: 10px 0; color: #475569; font-size: 14px; cursor: pointer; }
.icpl-intra-ledger-search-details > summary:focus-visible { outline: 3px solid #315da8; outline-offset: 3px; }
.icpl-intra-ledger-search-options { display: flex; flex-wrap: wrap; align-items: end; gap: 12px; padding: 12px; border: 1px solid #d9e2ea; border-radius: 8px; background: #f8fafc; }
body .icpl-intra-ledger-search-options > label { flex: 1 1 180px; min-width: 0; }
.icpl-intra-ledger-active-filters { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.icpl-intra-ledger-active-filters > span { padding: 4px 10px; border-radius: 999px; background: #eef4ff; color: #24539a; font-size: 13px; overflow-wrap: anywhere; }
body .icpl-intra-ledger-active-filters > a { background: none; border: 0; padding: 4px; color: #24539a; font-size: 13px; min-height: 0; }
body .icpl-intra-ledger-views { display: flex; flex-wrap: wrap; gap: 8px; padding: 8px 0 16px; border: 0; background: #fff; }
body .icpl-intra-ledger-view-link { border: 1px solid #d9e2ea; border-radius: 999px; min-height: 36px; box-sizing: border-box; padding: 6px 12px; background: #fff; color: #334155; font-size: 13px; }
body .icpl-intra-ledger-view-link.is-active { background: #eef4ff; border-color: #315da8; color: #24539a; font-weight: 700; }
body .icpl-intra-ledger-view-link:focus-visible { outline: 3px solid #315da8; outline-offset: 3px; }

/* Frontend directory only, 2026-10-13. One gutter per row; no nested axis panels. */
body .icpl-ledger-directory {
	--directory-gutter: var(--portal-gutter, 20px);
	--directory-ink: var(--portal-ink, #172334);
	--directory-muted: var(--portal-muted, #526171);
	--directory-line: var(--portal-line, #d7dfe7);
	--directory-accent: var(--portal-accent, #315da8);
	width: 100%; min-width: 0; margin: 0; padding: 0;
	background: #fff; color: var(--directory-ink); font-size: 15px; line-height: 1.65;
}
body .icpl-ledger-directory [hidden] { display: none !important; }
body .icpl-ledger-directory__header { padding: 20px var(--directory-gutter) 16px; border-bottom: 1px solid var(--directory-line); }
body .icpl-ledger-directory__header h2 { display: block; margin: 0; font-size: 20px; line-height: 1.4; font-weight: 700; }
body .icpl-ledger-directory__header p { margin: 6px 0 0; color: var(--directory-muted); font-size: 13px; }
body .icpl-ledger-directory__search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; padding: 16px var(--directory-gutter); border-bottom: 1px solid var(--directory-line); }
body .icpl-ledger-directory__search label { display: grid; grid-column: 1; gap: 6px; min-width: 0; font-size: 13px; font-weight: 600; }
body .icpl-ledger-directory__search input { width: 100%; min-width: 0; min-height: 44px; box-sizing: border-box; border: 1px solid var(--directory-line); border-radius: 8px; background: #fff; color: var(--directory-ink); padding: 9px 12px; font: inherit; font-size: 14px; }
body .icpl-ledger-directory__search input { font-weight: 400; }
body .icpl-ledger-directory__search button { align-self: end; min-height: 44px; border: 1px solid var(--directory-line); border-radius: 8px; background: #fff; color: var(--directory-ink); padding: 8px 12px; font: inherit; font-size: 13px; cursor: pointer; }
body .icpl-ledger-directory__search p { grid-column: 1 / -1; margin: 0; color: var(--directory-muted); font-size: 12px; }
body .icpl-ledger-directory__search [role="status"] { grid-column: 1 / -1; color: var(--directory-muted); font-size: 12px; }
body .icpl-ledger-directory__item { margin: 0; padding: 18px var(--directory-gutter); border-bottom: 1px solid var(--directory-line); min-width: 0; }
body .icpl-ledger-directory__open { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; align-items: center; gap: 10px; min-height: 44px; color: var(--directory-ink); text-decoration: none; border-radius: 4px; }
body .icpl-ledger-directory__open > .dashicons { width: 24px; height: 24px; font-size: 22px; color: var(--directory-accent); }
body .icpl-ledger-directory__open > svg { width: 24px; height: 24px; color: var(--directory-accent); }
body .icpl-intra-ledger-title > svg { width: 24px; height: 24px; flex: 0 0 24px; }
body .icpl-ledger-directory__open h3 { margin: 0; font-size: 17px; line-height: 1.5; font-weight: 700; overflow-wrap: anywhere; }
body .icpl-ledger-directory__open-label { white-space: nowrap; font-size: 13px; color: var(--directory-accent); }
body .icpl-ledger-directory__open:hover { color: var(--directory-accent); background: #f3f5f7; text-decoration: none; }
body .icpl-ledger-directory__categories { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 0; padding: 0; }
body .icpl-ledger-directory__categories a { display: inline-flex; align-items: center; min-height: 36px; box-sizing: border-box; max-width: 100%; border: 1px solid var(--directory-line); border-radius: 999px; padding: 6px 12px; background: #f3f5f7; color: #3c4c5d; font-size: 13px; line-height: 1.5; font-weight: 500; text-decoration: none; overflow-wrap: anywhere; }
body .icpl-ledger-directory__categories a:hover { background: #edf3fc; color: var(--directory-accent); border-color: var(--directory-accent); }
body .icpl-ledger-directory__description { margin: 6px 0 0; color: var(--directory-muted); font-size: 13px; }
body .icpl-ledger-directory__empty { margin: 0; padding: 24px var(--directory-gutter); color: var(--directory-muted); }
body .icpl-ledger-directory__knowledge { padding: 18px var(--directory-gutter) 20px; margin: 0; }
body .icpl-ledger-directory__kicker { margin: 0 0 4px; color: var(--directory-muted); font-size: 12px; font-weight: 600; }
body .icpl-ledger-directory__knowledge h3 { margin: 0; color: var(--directory-ink); font-size: 17px; line-height: 1.5; font-weight: 700; }
body .icpl-ledger-directory__planned { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 12px 0 0; padding: 0; color: var(--directory-muted); font-size: 13px; }
body .icpl-ledger-directory__planned > span { border-radius: 4px; background: #f3f5f7; padding: 2px 6px; font-size: 12px; }

/* Frontend record cards: fluid width, explicit labels, all prior list fields retained. */
body .icpl-ledger-record-cards { display: grid; gap: 10px; min-width: 0; padding: 12px var(--portal-gutter, 20px) 20px; background: #fff; }
body .icpl-ledger-record-card { min-width: 0; margin: 0; padding: 16px; border: 1px solid #d7dfe7; border-radius: 8px; background: #fff; color: #172334; box-shadow: none; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
body .icpl-ledger-record-card * { box-sizing: border-box; min-width: 0; }
body .icpl-ledger-record-card__head { display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; align-items: start; gap: 10px; }
body .icpl-ledger-record-card__icon { color: #315da8; }
body .icpl-ledger-record-card__icon :is(svg, img, .dashicons) { width: 28px; height: 28px; max-width: 100%; object-fit: contain; font-size: 28px; }
body .icpl-ledger-record-card__identity h2 { margin: 0; font-size: 17px; line-height: 1.5; font-weight: 700; }
body .icpl-ledger-record-card__identity h2 a { color: #172334; text-decoration: none; }
body .icpl-ledger-record-card a { color: #315da8; }
body .icpl-ledger-record-card a:hover { text-decoration: underline; }
body .icpl-ledger-record-card__url { display: block; margin-top: 3px; font-size: 13px; text-decoration: none; word-break: break-all; }
body .icpl-ledger-record-card__status { max-width: 150px; font-size: 12px; }
body .icpl-ledger-record-card__status .icpl-intra-ledger-value { white-space: normal; }
body .icpl-ledger-record-card__badges { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
body .icpl-ledger-record-card__badges > span { max-width: 100%; padding: 3px 9px; border-radius: 6px; border: 1px solid #e3e8ee; background: #f3f5f7; color: #3c4c5d; font-size: 12px; }
body .icpl-ledger-record-card__badges .icpl-intra-ledger-value { padding: 0; border: 0; border-radius: 0; background: transparent; color: inherit; font: inherit; white-space: normal; }
body .icpl-ledger-record-card__access { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; margin-top: 10px; font-size: 13px; }
body .icpl-ledger-record-card__access-label { color: #526171; }
body .icpl-ledger-record-card__access button { max-width: 100%; white-space: normal; overflow-wrap: anywhere; border: 1px solid #d7dfe7; border-radius: 6px; padding: 5px 8px; background: #fff; color: #315da8; font: inherit; cursor: pointer; }
body .icpl-ledger-record-card__extra { margin-top: 8px; }
body .icpl-ledger-record-card__extra summary { padding: 6px 0; color: #526171; cursor: pointer; font-size: 13px; }
body .icpl-ledger-record-card__extra dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 16px; margin: 8px 0 12px; }
body .icpl-ledger-record-card__extra :is(dt, dd) { margin: 0; padding: 0; }
body .icpl-ledger-record-card__extra dt { color: #526171; font-size: 12px; }
body .icpl-ledger-record-card__extra :is(img, video) { max-width: 100%; height: auto; }
body .icpl-ledger-record-card__footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; margin-top: 12px; padding-top: 8px; border-top: 1px solid #e3e8ee; }
body .icpl-ledger-record-card__meta { display: flex; flex: 1 1 220px; flex-wrap: wrap; gap: 4px 12px; color: #526171; font-size: 12px; }
body .icpl-ledger-record-card__actions { display: flex; flex-wrap: wrap; gap: 6px; }
body .icpl-ledger-record-card__actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 36px; padding: 6px 10px; font-size: 13px; text-decoration: none; border: 1px solid transparent; border-radius: 6px; }
body .icpl-ledger-record-card__actions a:first-child { border-color: #315da8; }
body .icpl-ledger-record-card :is(a, button, summary):focus-visible { outline: 3px solid #315da8; outline-offset: 3px; }
body .icpl-ledger-record-empty { margin: 0; padding: 16px 0; color: #526171; }
@media (max-width: 600px) {
	body .icpl-ledger-record-cards { padding-inline: 16px; }
	body .icpl-ledger-record-card { padding: 12px; }
	body .icpl-ledger-record-card__head { grid-template-columns: 28px minmax(0, 1fr); gap: 8px; }
	body .icpl-ledger-record-card__status { grid-column: 2; justify-self: start; }
	body .icpl-ledger-record-card__extra dl { grid-template-columns: minmax(0, 1fr); }
}

/* Frontend list header only. Preserve all controls, category links and descriptions. */
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list > .icpl-intra-ledger-heading {
	display: flex; flex-direction: row; align-items: flex-start; justify-content: space-between;
	gap: 8px 12px; margin: 0; padding: 10px var(--portal-gutter, 20px);
}
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list > .icpl-intra-ledger-heading > div {
	display: flex; flex: 1; flex-wrap: wrap; align-items: baseline; gap: 3px 10px; min-width: 0;
}
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-heading .icpl-intra-ledger-title { margin: 0; font-size: 20px; line-height: 1.4; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-heading p { margin: 0; font-size: 13px; line-height: 1.5; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-heading p:not(.icpl-intra-ledger-count) { order: 2; flex-basis: 100%; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-heading > a { width: auto; flex: 0 0 auto; min-height: 36px; padding: 6px 12px; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list > .icpl-intra-ledger-search {
	display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center;
	gap: 6px 8px; margin: 0; padding: 8px var(--portal-gutter, 20px);
}
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-search-query { margin: 0; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-search-query > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-search-details { grid-column: auto; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-search-details > summary { min-height: 36px; padding: 6px 0; white-space: nowrap; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-search-details[open] { grid-column: 1 / -1; }
body.icpl-has-portal-shell .icpl-portal-shell .icpl-intra-ledger-view.is-compact-list .icpl-intra-ledger-active-filters { gap: 4px 8px; padding: 0; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-count strong { font-size: 13px; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-active-filters > span { padding: 2px 8px; font-size: 12px; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list > .icpl-intra-ledger-views { gap: 6px; margin: 0; padding: 4px var(--portal-gutter, 20px) 8px; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-view-link { min-height: 32px; padding: 4px 10px; font-size: 13px; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list > .icpl-intra-ledger-csv-tools { margin: 0; border-width: 1px 0; border-radius: 0; }
body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list > .icpl-intra-ledger-csv-tools > summary { padding: 6px var(--portal-gutter, 20px); min-height: 32px; box-sizing: border-box; font-size: 13px; }
@media (max-width: 600px) {
	body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list > .icpl-intra-ledger-search { grid-template-columns: minmax(0, 1fr) auto; }
	body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-search-details { grid-column: 1 / -1; }
	body.icpl-has-portal-shell .icpl-portal-shell .is-compact-list .icpl-intra-ledger-heading > a { white-space: normal; max-width: 42%; }
}
body .icpl-ledger-directory :is(a, button, input):focus-visible { outline: 3px solid var(--directory-accent); outline-offset: 3px; }
@media (max-width: 600px) {
	body .icpl-ledger-directory { --directory-gutter: 16px; }
	body .icpl-ledger-directory__open { gap: 8px; }
}

/* Staff handoff overview inside the My Page related tab. */
body .icpl-intra-handoff { display: grid; gap: 14px; }
body .icpl-intra-handoff-heading h2 { margin: 0 0 4px; font-size: 20px; }
body .icpl-intra-handoff-heading p { margin: 0; color: var(--icpl-workspace-muted, #667085); font-size: 13px; }
body .icpl-intra-handoff-tabs > input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
body .icpl-intra-handoff-tabs > nav { display: flex; gap: 6px; overflow-x: auto; border-bottom: 1px solid var(--icpl-workspace-line, #e4e7ec); }
body .icpl-intra-handoff-tabs > nav label { display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; padding: 9px 12px; border-bottom: 2px solid transparent; color: var(--icpl-workspace-muted, #667085); cursor: pointer; font-size: 13px; font-weight: 650; }
body .icpl-intra-handoff-tabs > nav label span { min-width: 20px; padding: 1px 6px; border-radius: 999px; background: #eef2f6; color: #475467; text-align: center; font-size: 11px; }
body .icpl-intra-handoff-tabs > nav label:hover { color: var(--icpl-workspace-ink, #101828); }
body .icpl-intra-handoff-tabs > nav label.is-active { border-bottom-color: var(--icpl-workspace-accent, #087f73); color: var(--icpl-workspace-ink, #101828); }
body .icpl-intra-handoff-panels { min-width: 0; }
body .icpl-intra-handoff-tabs.has-tabs .icpl-intra-handoff-panels > section:not(.is-active) { display: none; }
body .icpl-intra-handoff-list { display: grid; border: 1px solid var(--icpl-workspace-line, #e4e7ec); border-radius: 10px; overflow: hidden; }
body .icpl-intra-handoff-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 12px; padding: 11px 13px; border-bottom: 1px solid #edf1f5; }
body .icpl-intra-handoff-row:last-child { border-bottom: 0; }
body .icpl-intra-handoff-row > div { display: grid; gap: 3px; min-width: 0; }
body .icpl-intra-handoff-row strong { overflow: hidden; color: var(--icpl-workspace-ink, #101828); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
body .icpl-intra-handoff-row small { color: var(--icpl-workspace-muted, #667085); font-size: 11px; }
body .icpl-intra-handoff-row > span { color: #475467; font-size: 11px; }
body .icpl-intra-handoff-row > a { color: var(--icpl-workspace-accent, #087f73); font-size: 12px; font-weight: 650; text-decoration: none; }
body .icpl-intra-handoff-row > a:hover { text-decoration: underline; }
@media (max-width: 600px) {
	body .icpl-intra-handoff-row { grid-template-columns: minmax(0, 1fr) auto; gap: 6px 10px; }
	body .icpl-intra-handoff-row > span { grid-column: 1; }
	body .icpl-intra-handoff-row > a { grid-column: 2; grid-row: 1 / span 2; }
}
