.isj-doc-wrap { width: 100%; }

.isj-doc-heading {
	margin: 0 0 12px 0;
	font-weight: 700;
	text-decoration: underline;
}
.isj-doc-heading-prefix { margin-right: 6px; }

.isj-doc-table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #000;
	background: #fff;
}
.isj-doc-table th,
.isj-doc-table td {
	border: 1px solid #000;
	padding: 10px 12px;
	vertical-align: middle;
	text-align: left;
	line-height: 1.4;
}
.isj-doc-table thead th {
	font-weight: 700;
	text-align: center;
}
.isj-doc-table .isj-doc-col-sl { width: 60px; text-align: center; }
.isj-doc-table .isj-doc-col-link { width: 180px; text-align: center; white-space: nowrap; }

.isj-doc-table tbody td.isj-doc-col-sl { text-align: center; font-weight: 600; }

.isj-doc-link {
	font-weight: 700;
	color: #d10000;
	text-decoration: none;
	cursor: pointer;
}
.isj-doc-link:hover { text-decoration: underline; }
.isj-doc-link-disabled { color: #999; cursor: default; }

.isj-doc-empty { text-align: center; color: #888; font-style: italic; }

/* ---------- Modal ---------- */
.isj-doc-modal {
	position: fixed;
	inset: 0;
	display: none;
	z-index: 99999;
}
.isj-doc-modal.is-open { display: block; }

.isj-doc-modal-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.7);
}

.isj-doc-modal-dialog {
	position: relative;
	margin: 3vh auto;
	width: 92vw;
	max-width: 1000px;
	height: 94vh;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.4);
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.isj-doc-modal-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 14px;
	border-bottom: 1px solid #e5e5e5;
	background: #f8f8f8;
	flex-shrink: 0;
}
.isj-doc-modal-title {
	margin: 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
	color: #222;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.isj-doc-modal-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
}
.isj-doc-modal-download {
	display: inline-block;
	padding: 6px 14px;
	background: #d10000;
	color: #fff !important;
	text-decoration: none;
	border-radius: 4px;
	font-size: 14px;
	font-weight: 600;
}
.isj-doc-modal-download:hover { background: #a00000; }
.isj-doc-modal-close {
	background: transparent;
	border: 0;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	color: #555;
	padding: 0 6px;
}
.isj-doc-modal-close:hover { color: #000; }

.isj-doc-modal-body {
	flex: 1 1 auto;
	background: #2b2b2b;
	overflow: auto;
	display: flex;
	align-items: center;
	justify-content: center;
}
.isj-doc-modal-body iframe {
	width: 100%;
	height: 100%;
	border: 0;
	background: #fff;
}
.isj-doc-modal-body img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
}
.isj-doc-modal-body .isj-doc-modal-loading {
	color: #fff;
	font-size: 14px;
}

@media (max-width: 640px) {
	.isj-doc-table th,
	.isj-doc-table td { padding: 8px; font-size: 14px; }
	.isj-doc-table .isj-doc-col-link { width: auto; }
	.isj-doc-modal-dialog { width: 96vw; height: 96vh; margin: 2vh auto; }
	.isj-doc-modal-title { font-size: 14px; }
}
