		:root {
			--bg: #f5f3ed;
			--panel: #fffefa;
			--panel-2: #f8f7f1;
			--ink: #232323;
			--muted: #6a665d;
			--line: #d8d3c7;
			--dark: #24312e;
			--green: #2f7a62;
			--teal: #2f6d7a;
			--red: #b34a3f;
			--amber: #b9762c;
			--blue: #405f92;
			--shadow: 0 18px 44px rgba(39, 42, 37, .11);
			/* Common table tokens. */
			--badge-1: 38px;
			--badge-2: 46px;
			--badge-3: 54px;
			--badge-4: 66px;
			--detail-button-width: var(--badge-4);
			--cell-check-width: 74px;
			--cell-action-width: 86px;
			--cell-compact-width: 74px;
			--cell-medium-width: 120px;
			--cell-wide-width: 180px;
			--table-wide-min-width: 1200px;
			--table-code-min-width: 920px;
			--code-order-width: 116px;
			--code-key-width: auto;
			--code-state-width: 92px;
			--code-ref-width: 92px;
			--code-action-width: 108px;
		}

		* {
			box-sizing: border-box;
		}

		[hidden] {
			display: none !important;
		}

		body {
			margin: 0;
			background:
				linear-gradient(90deg, rgba(36, 49, 46, .045) 1px, transparent 1px),
				linear-gradient(0deg, rgba(36, 49, 46, .035) 1px, transparent 1px),
				var(--bg);
			background-size: 24px 24px;
			color: var(--ink);
			font-family: "Yu Gothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
			font-size: 14px;
			letter-spacing: 0;
		}

		button,
		input,
		select {
			font: inherit;
		}

		select {
			-webkit-appearance: none;
			-moz-appearance: none;
			appearance: none;
			padding: 0 34px 0 10px;
			border: 1px solid var(--line);
			background:
				linear-gradient(45deg, transparent 50%, var(--muted) 50%),
				linear-gradient(135deg, var(--muted) 50%, transparent 50%),
				var(--panel);
			background-position:
				calc(100% - 17px) 50%,
				calc(100% - 12px) 50%,
				0 0;
			background-size:
				5px 5px,
				5px 5px,
				100% 100%;
			background-repeat: no-repeat;
			color: var(--ink);
			cursor: pointer;
		}

		select:focus-visible {
			outline: 0;
			border-color: var(--dark);
			box-shadow: 0 0 0 2px rgba(36, 49, 46, .12);
		}

		.shell {
			display: grid;
			grid-template-columns: 76px minmax(0, 1fr);
			min-height: 100vh;
		}

		.sidebar {
			position: sticky;
			top: 0;
			z-index: 20;
			width: 76px;
			height: 100vh;
			padding: 18px 12px;
			background: #26332f;
			color: #f7f2e7;
			border-right: 1px solid rgba(255, 255, 255, .12);
			overflow: hidden;
			transition: width .18s ease, box-shadow .18s ease;
		}

		.sidebar.is-expanded,
		.sidebar:focus-within {
			width: 248px;
			box-shadow: 20px 0 42px rgba(26, 32, 30, .22);
		}

		.brand {
			display: flex;
			align-items: center;
			gap: 10px;
			justify-content: center;
			height: 42px;
			margin-bottom: 24px;
		}

		.sidebar.is-expanded .brand,
		.sidebar:focus-within .brand {
			justify-content: flex-start;
		}

		.brand-mark {
			display: grid;
			place-items: center;
			width: 34px;
			height: 34px;
			border: 1px solid rgba(255, 255, 255, .42);
			background: #e8c16f;
			color: #26332f;
			font-weight: 800;
		}

		.brand-name {
			white-space: nowrap;
			font-size: 18px;
			font-weight: 800;
			line-height: 1;
		}

		.brand-sub {
			margin-top: 4px;
			color: rgba(247, 242, 231, .68);
			font-size: 11px;
		}

		.nav-section {
			margin-top: 20px;
		}

		.nav-title {
			margin: 0 0 8px;
			color: rgba(247, 242, 231, .54);
			font-size: 11px;
			font-weight: 700;
		}

		.nav-text {
			display: none;
			white-space: nowrap;
		}

		.brand > div:last-child,
		.nav-title {
			display: none;
			white-space: nowrap;
		}

		.sidebar.is-expanded .brand > div:last-child,
		.sidebar:focus-within .brand > div:last-child,
		.sidebar.is-expanded .nav-title,
		.sidebar:focus-within .nav-title,
		.sidebar.is-expanded .nav-text,
		.sidebar:focus-within .nav-text {
			display: block;
		}

		.sidebar.is-expanded .brand > div:last-child,
		.sidebar:focus-within .brand > div:last-child,
		.sidebar.is-expanded .nav-title,
		.sidebar:focus-within .nav-title,
		.sidebar.is-expanded .nav-text,
		.sidebar:focus-within .nav-text {
			opacity: 1;
			transform: translateX(0);
			transition: opacity .14s ease, transform .14s ease;
		}

		.nav-list {
			display: grid;
			gap: 5px;
			margin: 0;
			padding: 0;
			list-style: none;
		}

		.nav-item {
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 10px;
			min-height: 38px;
			padding: 8px 10px;
			border: 1px solid transparent;
			color: rgba(247, 242, 231, .78);
			text-decoration: none;
		}

		.sidebar.is-expanded .nav-item,
		.sidebar:focus-within .nav-item {
			justify-content: flex-start;
		}

		.nav-item.is-active {
			background: rgba(232, 193, 111, .16);
			border-color: rgba(232, 193, 111, .34);
			color: #fffefa;
		}

		.nav-icon {
			display: grid;
			place-items: center;
			width: 22px;
			height: 22px;
			flex: 0 0 22px;
			color: #e8c16f;
		}

		.nav-icon svg {
			width: 18px;
			height: 18px;
			stroke: currentColor;
			stroke-width: 2;
			fill: none;
			stroke-linecap: round;
			stroke-linejoin: round;
		}

		.content {
			min-width: 0;
		}

		.topbar {
			position: sticky;
			top: 0;
			z-index: 10;
			display: flex;
			align-items: center;
			justify-content: space-between;
			min-height: 72px;
			padding: 14px 28px;
			background: rgba(255, 254, 250, .88);
			backdrop-filter: blur(18px);
			border-bottom: 1px solid var(--line);
		}

		.breadcrumb {
			display: flex;
			align-items: center;
			gap: 6px;
			color: var(--muted);
			font-size: 12px;
		}

		.breadcrumb-link {
			color: var(--muted);
			text-decoration-line: underline;
			text-decoration-color: var(--muted);
			text-underline-offset: 3px;
			font-weight: 800;
		}

		.breadcrumb-link:hover,
		.breadcrumb-link:focus-visible {
			color: var(--muted);
			text-decoration-color: var(--muted);
			outline: 0;
		}

		.page-title {
			margin: 4px 0 0;
			font-size: 24px;
			line-height: 1.15;
		}

		.page-summary {
			max-width: 860px;
			margin-top: 6px;
			color: var(--muted);
			font-size: 12px;
			font-weight: 700;
			line-height: 1.5;
		}

		.top-actions {
			display: flex;
			align-items: center;
			gap: 10px;
		}

		.icon-button,
		.primary-button,
		.ghost-button,
		.detail-button {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			border: 1px solid var(--line);
			background: var(--panel);
			color: var(--ink);
			cursor: pointer;
		}

		.icon-button {
			position: relative;
			width: 38px;
			height: 38px;
			font-weight: 800;
		}

		.order-controls {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 3px;
		}

		.order-button {
			box-sizing: border-box;
			width: 24px;
			min-width: 24px;
			max-width: 24px;
			height: 36px;
			min-height: 36px;
			max-height: 36px;
			padding: 0;
			font-size: 10px;
			line-height: 1;
		}

		.order-button:disabled {
			opacity: .38;
			cursor: default;
		}

		.primary-button,
		.ghost-button {
			gap: 8px;
			min-height: 38px;
			padding: 0 14px;
			font-weight: 700;
		}

		.primary-button {
			background: var(--dark);
			border-color: var(--dark);
			color: #fffefa;
		}

		.detail-button {
			box-sizing: border-box;
			width: var(--detail-button-width);
			inline-size: var(--detail-button-width);
			min-width: var(--detail-button-width);
			min-inline-size: var(--detail-button-width);
			max-width: var(--detail-button-width);
			max-inline-size: var(--detail-button-width);
			height: 28px;
			min-height: 28px;
			max-height: 28px;
			flex: none;
			justify-self: center;
			align-self: center;
			padding: 0;
			background: #f4f0e8;
			color: var(--ink);
			font-size: 12px;
			font-weight: 800;
			text-decoration: none;
			white-space: nowrap;
		}

		.table .detail-button {
			margin-inline: auto;
		}

		.badge-dot {
			position: absolute;
			top: -5px;
			right: -5px;
			display: grid;
			place-items: center;
			min-width: 18px;
			height: 18px;
			padding: 0 5px;
			background: var(--red);
			color: white;
			font-size: 10px;
			font-weight: 800;
		}

		.user-chip {
			display: flex;
			align-items: center;
			gap: 10px;
			padding-left: 8px;
			border-left: 1px solid var(--line);
			color: inherit;
			text-decoration: none;
		}

		.avatar {
			display: grid;
			place-items: center;
			width: 34px;
			height: 34px;
			background: #dfe7dc;
			color: var(--dark);
			font-size: 12px;
			font-weight: 800;
		}

		.user-name {
			font-weight: 800;
			line-height: 1.2;
		}

		.user-role {
			color: var(--muted);
			font-size: 11px;
		}

		.user-tenant {
			margin-top: 2px;
			color: var(--muted);
			font-size: 10px;
			font-weight: 800;
			line-height: 1.15;
			white-space: nowrap;
		}

		.main {
			display: grid;
			gap: 12px;
			min-width: 0;
			padding: 18px 22px 28px;
		}


		.form-layout {
			display: grid;
			grid-template-columns: minmax(0, 1.35fr) minmax(320px, .75fr);
			gap: 14px;
			align-items: start;
		}

		.form-stack {
			display: grid;
			gap: 14px;
			min-width: 0;
		}

		.form-grid {
			display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: 12px;
			padding: 12px;
		}

		.form-grid.is-three {
			grid-template-columns: repeat(3, minmax(0, 1fr));
		}

		.form-grid.is-one {
			grid-template-columns: 1fr;
		}

		.form-grid .form-field-full {
			grid-column: 1 / -1;
		}

		.form-note {
			color: var(--muted);
			font-size: 12px;
			font-weight: 800;
			line-height: 1.5;
		}

		.required-mark {
			color: var(--red);
			font-weight: 900;
		}

		.form-field {
			position: relative;
			display: grid;
			gap: 6px;
			min-width: 0;
		}

		.form-label {
			color: var(--muted);
			font-size: 11px;
			font-weight: 900;
		}

		.input-shell,
		.select-shell,
		.textarea-shell {
			position: relative;
			display: flex;
			align-items: center;
			width: 100%;
			min-height: 38px;
			border: 1px solid var(--line);
			background: var(--panel);
			box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7);
		}

		.input-shell:focus-within,
		.select-shell:focus-within,
		.textarea-shell:focus-within {
			border-color: var(--dark);
			box-shadow: 0 0 0 2px rgba(36, 49, 46, .12);
		}

		.input-shell input,
		.select-shell select,
		.textarea-shell textarea {
			width: 100%;
			min-width: 0;
			min-height: 36px;
			border: 0;
			background: transparent;
			color: var(--ink);
			outline: 0;
			font: inherit;
			font-weight: 800;
		}

		.input-shell input {
			padding: 0 12px;
		}

		.readonly-input-shell {
			position: relative;
			display: flex;
			align-items: center;
			width: 100%;
			min-height: 38px;
			border: 1px solid var(--line);
			background: #eeeae0;
			box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65);
		}

		.readonly-input-shell p {
			display: flex;
			align-items: center;
			width: 100%;
			min-width: 0;
			min-height: 36px;
			margin: 0;
			padding: 0 12px;
			color: var(--muted);
			font: inherit;
			font-weight: 800;
			overflow-wrap: anywhere;
		}

		.form-stack .input-shell,
		.form-stack .select-shell {
			min-height: 42px;
		}

		.form-stack .input-shell input,
		.form-stack .select-shell select {
			min-height: 40px;
			padding-left: 14px;
			font-size: 13px;
		}

		.form-stack .select-shell select {
			padding-right: 38px;
		}

		.readonly-value {
			display: flex;
			align-items: center;
			width: 100%;
			min-height: 36px;
			padding: 0 12px;
			color: var(--muted);
			background: #eeeae0;
			border: 1px solid #d8d1c4;
			font: inherit;
			font-weight: 800;
		}

		.select-shell select {
			-webkit-appearance: none;
			-moz-appearance: none;
			appearance: none;
			background:
				linear-gradient(45deg, transparent 50%, var(--muted) 50%),
				linear-gradient(135deg, var(--muted) 50%, transparent 50%),
				transparent;
			background-position:
				calc(100% - 17px) 50%,
				calc(100% - 12px) 50%,
				0 0;
			background-size:
				5px 5px,
				5px 5px,
				100% 100%;
			background-repeat: no-repeat;
			padding: 0 34px 0 10px;
			cursor: pointer;
		}

		.select-shell::after {
			content: none;
		}

		.textarea-shell {
			align-items: stretch;
			min-height: 118px;
		}

		.textarea-shell textarea {
			min-height: 116px;
			padding: 10px 12px;
			resize: vertical;
			line-height: 1.6;
		}

		.form-stack .textarea-shell {
			min-height: 142px;
		}

		.form-stack .textarea-shell textarea {
			min-height: 140px;
			padding: 12px 14px;
			font-size: 13px;
			font-weight: 700;
		}

		.toggle-row {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 12px;
			padding: 12px;
			border-top: 1px solid #ece7dd;
		}

		.toggle-label {
			display: inline-flex;
			align-items: center;
			gap: 10px;
			color: var(--ink);
			font-size: 13px;
			font-weight: 900;
			cursor: pointer;
		}

		.toggle-label input[type="checkbox"] {
			appearance: none;
			display: grid;
			place-items: center;
			width: 40px;
			height: 22px;
			margin: 0;
			border: 1px solid var(--line);
			background: #ebe6da;
			cursor: pointer;
		}

		.toggle-label input[type="checkbox"]::before {
			content: "";
			width: 16px;
			height: 16px;
			background: var(--panel);
			box-shadow: 0 1px 2px rgba(36, 49, 46, .18);
			transform: translateX(-9px);
			transition: transform .14s ease, background .14s ease;
		}

		.toggle-label input[type="checkbox"]:checked {
			background: var(--dark);
			border-color: var(--dark);
		}

		.toggle-label input[type="checkbox"]:checked::before {
			background: #fffefa;
			transform: translateX(9px);
		}

		.toggle-label input[type="checkbox"]:focus-visible {
			outline: 0;
			box-shadow: 0 0 0 2px rgba(36, 49, 46, .18);
		}

		.selection-list {
			display: grid;
			gap: 8px;
			margin: 0;
			padding: 12px;
			list-style: none;
		}

		.selection-item {
			display: grid;
			grid-template-columns: auto minmax(0, 1fr) auto;
			gap: 10px;
			align-items: center;
			padding: 9px 10px;
			background: var(--panel-2);
			border: 1px solid var(--line);
		}

		.order-chip {
			display: grid;
			place-items: center;
			width: 24px;
			height: 24px;
			background: var(--dark);
			color: #fffefa;
			font-size: 11px;
			font-weight: 900;
		}

		.form-actions {
			display: flex;
			align-items: center;
			justify-content: flex-end;
			gap: 8px;
			padding: 12px;
			border-top: 1px solid #ece7dd;
		}


		.panel {
			min-width: 0;
			background: var(--panel);
			border: 1px solid var(--line);
			box-shadow: var(--shadow);
		}

		.collapsible-panel {
			overflow: hidden;
		}

		.collapsible-panel > summary {
			display: block;
			list-style: none;
			cursor: pointer;
		}

		.collapsible-panel > summary::-webkit-details-marker {
			display: none;
		}

		.collapse-indicator {
			display: inline-grid;
			place-items: center;
			width: 24px;
			height: 24px;
			border: 1px solid var(--line);
			background: var(--panel-2);
			color: var(--muted);
			font-size: 12px;
			font-weight: 900;
			transition: transform .14s ease;
		}

		.collapsible-panel[open] .collapse-indicator {
			transform: rotate(90deg);
		}

		.panel-header {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 12px;
			min-height: 48px;
			padding: 10px 12px;
			border-bottom: 1px solid var(--line);
		}

		.panel-title {
			margin: 0;
			font-size: 15px;
			line-height: 1.25;
		}

		.panel-title-row {
			display: flex;
			align-items: center;
			gap: 10px;
			flex-wrap: wrap;
		}

		.panel-subtitle {
			margin-top: 4px;
			color: var(--muted);
			font-size: 12px;
		}

		.panel-meta {
			display: flex;
			align-items: center;
			gap: 8px;
			flex-wrap: wrap;
			margin-top: 7px;
			color: var(--muted);
			font-size: 12px;
			font-weight: 800;
		}

		.panel-meta span + span::before {
			content: "/";
			margin-right: 8px;
			color: #b8b0a2;
			font-weight: 700;
		}

		.panel-control-stack {
			display: grid;
			gap: 0;
			justify-items: end;
		}

		.table {
			width: 100%;
			border-collapse: collapse;
		}

		.table-wrap {
			min-width: 0;
			overflow-x: auto;
		}

		.table-fixed {
			min-width: var(--table-min-width, 1080px);
			table-layout: fixed;
		}

		.table-dashboard {
			table-layout: fixed;
		}

		.table-wide {
			--table-min-width: var(--table-wide-min-width);
		}

		.table-code {
			--table-min-width: var(--table-code-min-width);
		}

		.table-code .cell-order {
			width: var(--code-order-width);
			min-width: var(--code-order-width);
			max-width: var(--code-order-width);
		}

		.table-code .cell-code-key {
			width: auto;
		}

		.table-code .cell-state {
			width: var(--code-state-width);
			min-width: var(--code-state-width);
			max-width: var(--code-state-width);
		}

		.table-code .cell-ref {
			width: var(--code-ref-width);
			min-width: var(--code-ref-width);
			max-width: var(--code-ref-width);
		}

		.table-code .cell-code-action {
			width: var(--code-action-width);
			min-width: var(--code-action-width);
			max-width: var(--code-action-width);
		}

		.table th,
		.table td {
			padding: 8px 10px;
			border-bottom: 1px solid #ece7dd;
			text-align: center;
			vertical-align: middle;
		}

		.table th {
			color: var(--muted);
			background: var(--panel-2);
			font-size: 11px;
			font-weight: 800;
			text-align: center;
		}

		.sort-button {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 4px;
			width: 100%;
			min-height: 26px;
			padding: 0 4px;
			border: 0;
			background: transparent;
			color: inherit;
			cursor: pointer;
			font: inherit;
			font-weight: 900;
			line-height: 1.2;
			text-align: center;
		}

		.sort-button:hover,
		.sort-button:focus-visible {
			color: var(--ink);
			outline: 0;
		}

		.sort-button:focus-visible {
			box-shadow: inset 0 -2px 0 var(--dark);
		}

		.sort-button.is-active {
			color: var(--ink);
		}

		.sort-indicator {
			flex: 0 0 auto;
			color: var(--muted);
			font-size: 10px;
			line-height: 1;
		}

		.table .align-left {
			text-align: left;
		}

		.table .align-center {
			text-align: center;
			font-weight: 900;
		}

		.table .align-right {
			text-align: right;
		}

		.table .text-nowrap {
			white-space: nowrap;
		}

		.table .text-ellipsis {
			overflow: hidden;
			text-overflow: ellipsis;
			white-space: nowrap;
		}

		.table .cell-action {
			width: var(--cell-action-width);
			min-width: var(--cell-action-width);
			max-width: var(--cell-action-width);
			text-align: center;
		}

		.table .cell-check {
			width: var(--cell-check-width);
			min-width: var(--cell-check-width);
			max-width: var(--cell-check-width);
			padding-right: 6px;
			padding-left: 6px;
			text-align: center;
		}

		.table .cell-compact {
			width: var(--cell-compact-width);
			min-width: var(--cell-compact-width);
			max-width: var(--cell-compact-width);
		}

		.table .cell-medium {
			width: var(--cell-medium-width);
			min-width: var(--cell-medium-width);
			max-width: var(--cell-medium-width);
		}

		.table .cell-wide {
			width: var(--cell-wide-width);
			min-width: var(--cell-wide-width);
			max-width: var(--cell-wide-width);
		}

		.table tr:last-child td {
			border-bottom: 0;
		}

		.row-title {
			display: grid;
			gap: 3px;
			text-align: left;
		}

		.row-main {
			font-weight: 900;
		}

		.row-sub {
			color: var(--muted);
			font-size: 11px;
			font-weight: 700;
		}

		.strong {
			font-weight: 800;
		}

		.muted {
			color: var(--muted);
			font-size: 12px;
		}

		.badge {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-height: 24px;
			padding: 0 8px;
			border: 1px solid currentColor;
			font-size: 12px;
			font-weight: 800;
			white-space: nowrap;
		}

		.badge-1 {
			min-width: var(--badge-1);
		}

		.badge-2 {
			min-width: var(--badge-2);
		}

		.badge-3 {
			min-width: var(--badge-3);
		}

		.badge-4 {
			min-width: var(--badge-4);
		}

		.badge-blue {
			color: #1d4ed8;
			background: #dbeafe;
		}

		.badge-green {
			color: #047857;
			background: #d1fae5;
		}

		.badge-red {
			color: #b91c1c;
			background: #fee2e2;
		}

		.badge-amber {
			color: #b45309;
			background: #fef3c7;
		}

		.badge-teal {
			color: #0e7490;
			background: #cffafe;
		}

		.badge-gray {
			color: #4b5563;
			background: #f3f4f6;
		}

		.badge-slate {
			color: #475569;
			background: #f1f5f9;
		}

		.badge-steel {
			color: #334155;
			background: #f1f5f9;
		}

		.badge-charcoal {
			color: #374151;
			background: #f3f4f6;
		}

		.badge-indigo {
			color: #4338ca;
			background: #e0e7ff;
		}

		.badge-purple {
			color: #6d28d9;
			background: #f3e8ff;
		}

		.badge-violet {
			color: #7e22ce;
			background: #f3e8ff;
		}

		.badge-orange {
			color: #c2410c;
			background: #ffedd5;
		}

		.badge-rose {
			color: #9f1239;
			background: #ffe4e6;
		}

		.badge-maroon {
			color: #7f1d1d;
			background: #fee2e2;
		}

		.badge-dark {
			color: #111827;
			background: #e5e7eb;
		}

		.user-authority-badge {
			min-width: 96px;
			width: auto;
			padding-inline: 10px;
		}

		.opportunity-stage-badge {
			min-width: 78px;
			width: auto;
			padding-inline: 10px;
		}

		.modal-backdrop {
			position: fixed;
			inset: 0;
			z-index: 20;
			display: grid;
			place-items: center;
			padding: 24px;
			background: rgba(36, 49, 46, .36);
		}

		.result-modal {
			display: grid;
			gap: 16px;
			width: min(520px, 100%);
			padding: 18px;
			border: 1px solid var(--line);
			background: var(--panel);
			box-shadow: 0 24px 60px rgba(36, 49, 46, .22);
		}

		.modal-header,
		.modal-actions {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 12px;
		}

		.modal-header h2 {
			margin: 0;
			font-size: 18px;
			letter-spacing: 0;
		}

		.result-grid {
			display: grid;
			grid-template-columns: repeat(3, minmax(0, 1fr));
			gap: 10px;
		}

		.result-stat {
			display: grid;
			gap: 4px;
			place-items: center;
			min-height: 72px;
			border: 1px solid var(--line);
			background: var(--panel-2);
			text-align: center;
		}

		.result-stat strong {
			font-size: 22px;
			line-height: 1;
		}

		.result-label {
			color: var(--muted);
			font-size: 12px;
			font-weight: 900;
		}

		.result-list {
			display: grid;
			gap: 6px;
			margin: 0;
			padding-left: 20px;
			color: var(--muted);
			font-weight: 700;
		}

		.amount {
			font-weight: 900;
			white-space: nowrap;
			text-align: right;
		}

		.note-text {
			text-align: left;
		}

		.panel-footer {
			display: flex;
			align-items: center;
			justify-content: flex-end;
			gap: 12px;
			min-height: 42px;
			padding: 8px 12px;
			background: var(--panel-2);
			border-top: 1px solid var(--line);
		}

		.pagination {
			justify-content: flex-end;
		}

		.page-button {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-width: 32px;
			height: 32px;
			padding: 0 8px;
			border: 1px solid var(--line);
			background: var(--panel);
			color: var(--ink);
			font-weight: 800;
			cursor: pointer;
		}

		.page-button.is-current {
			background: var(--dark);
			border-color: var(--dark);
			color: #fffefa;
		}

		.panel-actions {
			display: flex;
			align-items: center;
			gap: 8px;
			flex-wrap: wrap;
			justify-content: flex-end;
		}

		.panel-actions .page-size-control {
			display: inline-flex;
			align-items: center;
			gap: 6px;
			margin-right: 2px;
			color: var(--muted);
			font-size: 12px;
			font-weight: 800;
			white-space: nowrap;
		}

		.panel-actions .page-size-control .select-shell {
			width: 112px;
			min-height: 30px;
		}

		.panel-actions .page-size-control .select-shell select {
			min-height: 28px;
			font-size: 12px;
		}

		.action-group {
			display: inline-flex;
			align-items: center;
			gap: 8px;
			flex-wrap: wrap;
		}

		.tsv-actions {
			margin-left: 12px;
			padding-left: 12px;
			border-left: 1px solid var(--line);
		}

		.count-pill {
			display: inline-flex;
			align-items: center;
			min-height: 24px;
			padding: 0 8px;
			border: 1px solid var(--line);
			background: var(--panel);
			color: var(--muted);
			font-size: 12px;
			font-weight: 800;
		}



@media (max-width: 1080px) {
	.shell {
		grid-template-columns: 76px minmax(0, 1fr);
	}

	.sidebar {
		padding: 18px 12px;
	}
}

@media (max-width: 760px) {
	.shell {
		display: block;
	}

	.sidebar {
		position: static;
		display: flex;
		align-items: center;
		gap: 12px;
		width: 100%;
		height: auto;
		padding: 10px 12px;
		overflow-x: auto;
	}

	.sidebar.is-expanded,
	.sidebar:focus-within {
		width: 100%;
		box-shadow: none;
	}

	.brand > div:last-child,
	.nav-title,
	.nav-text,
	.sidebar.is-expanded .brand > div:last-child,
	.sidebar:focus-within .brand > div:last-child,
	.sidebar.is-expanded .nav-title,
	.sidebar:focus-within .nav-title,
	.sidebar.is-expanded .nav-text,
	.sidebar:focus-within .nav-text {
		display: none;
	}

	.brand {
		flex: 0 0 auto;
		margin: 0;
	}

	.nav-section {
		margin: 0;
	}

	.nav-list {
		display: flex;
	}

	.nav-item {
		width: 40px;
		min-height: 36px;
		padding: 6px;
	}

	.topbar {
		position: static;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 16px;
	}

	.topbar > div:first-child {
		flex: 1 1 auto;
		min-width: 0;
	}

	.top-actions {
		flex: 0 0 auto;
		justify-content: flex-end;
		width: auto;
	}

	.user-chip {
		margin-left: auto;
	}

	.user-tenant {
		display: none;
	}

	.main {
		padding: 16px;
	}

	.form-layout,
	.form-grid,
	.form-grid.is-three {
		grid-template-columns: 1fr;
	}

	.form-field {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.form-label {
		text-align: left;
	}

	.form-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.form-actions > *,
	.panel-control-stack,
	.toolbar-group,
	.toolbar-group > * {
		width: 100%;
	}

	.table-wrap {
		overflow-x: auto;
	}

	.table {
		min-width: 680px;
	}
}
