/* Single tool pages and built-in browser tools. */
.trezonic-core-single-tool {
	padding-bottom: 80px;
	background: linear-gradient(180deg, var(--trezonic-core-surface) 0, var(--trezonic-core-white) 420px);
}

.trezonic-core-tool-container {
	max-width: min(calc(100% - 32px), 1040px);
}

.trezonic-core-tool-hero {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	max-width: 850px;
	padding: 58px 0 30px;
}

.trezonic-core-tool-hero .trezonic-core-card-icon {
	width: 64px;
	height: 64px;
	font-size: 13px;
}

.trezonic-core-tool-hero h1 {
	margin: 0 0 8px;
	font-size: clamp(36px, 6vw, 58px);
	line-height: 1.04;
	letter-spacing: -0.055em;
}

.trezonic-core-tool-hero p {
	max-width: 760px;
	margin: 0;
	color: var(--trezonic-core-muted);
	font-size: 17px;
}

.trezonic-core-guidance-notice,
.trezonic-core-privacy-note {
	padding: 13px 15px;
	background: color-mix(in srgb, var(--trezonic-core-gold) 12%, white);
	color: color-mix(in srgb, var(--trezonic-core-black) 85%, var(--trezonic-core-muted));
	border: 1px solid color-mix(in srgb, var(--trezonic-core-gold) 32%, white);
	border-radius: 10px;
	font-size: 13px;
}

.trezonic-core-guidance-notice { margin-bottom: 16px; }

.trezonic-core-tool-app {
	margin: 0 0 42px;
	padding: clamp(18px, 4vw, 32px);
	background: var(--trezonic-core-white);
	border: 1px solid var(--trezonic-core-border);
	border-radius: calc(var(--trezonic-core-radius) + 4px);
	box-shadow: 0 20px 60px rgba(11, 31, 58, 0.09);
}

.trezonic-core-tool-toolbar {
	display: flex;
	align-items: start;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 22px;
}

.trezonic-core-tool-toolbar h2 {
	margin: 0 0 5px;
	font-size: 24px;
	letter-spacing: -0.03em;
}

.trezonic-core-tool-toolbar p {
	margin: 0;
	color: var(--trezonic-core-muted);
	font-size: 14px;
}

.trezonic-core-tool-actions {
	display: flex;
	flex: 0 0 auto;
	gap: 8px;
}

.trezonic-core-field,
.trezonic-core-field-label {
	display: grid;
	gap: 7px;
	font-size: 13px;
	font-weight: 780;
}

.trezonic-core-field input,
.trezonic-core-field select,
.trezonic-core-calculation-fields input,
.trezonic-core-textarea {
	width: 100%;
	min-height: 46px;
	padding: 10px 12px;
	background: var(--trezonic-core-white);
	color: var(--trezonic-core-black);
	border: 1px solid var(--trezonic-core-border);
	border-radius: 9px;
	font: inherit;
}

.trezonic-core-textarea {
	min-height: 260px;
	margin-top: 7px;
	resize: vertical;
	line-height: 1.65;
}

.trezonic-core-tool-status {
	min-height: 20px;
	margin: 7px 0;
	color: var(--trezonic-core-muted);
	font-size: 13px;
}

.trezonic-core-stat-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 9px;
	margin: 18px 0;
}

.trezonic-core-stat {
	display: grid;
	gap: 3px;
	padding: 14px;
	background: var(--trezonic-core-surface);
	border: 1px solid var(--trezonic-core-border);
	border-radius: 11px;
}

.trezonic-core-stat span {
	font-size: 21px;
	font-weight: 850;
	letter-spacing: -0.03em;
}

.trezonic-core-stat small { color: var(--trezonic-core-muted); font-size: 11px; }

.trezonic-core-tool-panel,
.trezonic-core-example {
	padding: 17px;
	background: var(--trezonic-core-surface);
	border: 1px solid var(--trezonic-core-border);
	border-radius: 11px;
}

.trezonic-core-tool-panel h3 { margin: 0 0 10px; font-size: 16px; }
.trezonic-core-muted { margin: 0; color: var(--trezonic-core-muted); font-size: 13px; }
.trezonic-core-keyword-list { display: grid; gap: 7px; margin: 0; padding-left: 24px; }
.trezonic-core-keyword-list:empty { display: none; }
.trezonic-core-keyword-list li { padding-left: 4px; }
.trezonic-core-keyword-list span { float: right; color: var(--trezonic-core-muted); font-size: 12px; }
.trezonic-core-word-counter .trezonic-core-privacy-note { margin: 18px 0 0; }

.trezonic-core-calculation-fields,
.trezonic-core-compressor-controls {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin: 17px 0;
}

.trezonic-core-calculation-fields[hidden] { display: none; }

.trezonic-core-result {
	margin-top: 20px;
	padding: 20px;
	background: color-mix(in srgb, var(--trezonic-core-gold) 13%, white);
	border: 1px solid color-mix(in srgb, var(--trezonic-core-gold) 38%, white);
	border-radius: 12px;
}

.trezonic-core-result[hidden],
.trezonic-core-error[hidden],
.trezonic-core-image-results[hidden],
.trezonic-core-download[hidden] { display: none; }

.trezonic-core-result-label { display: block; color: var(--trezonic-core-muted); font-size: 12px; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }
.trezonic-core-result strong { display: block; margin: 4px 0; font-size: clamp(28px, 5vw, 42px); letter-spacing: -.04em; }
.trezonic-core-result p { margin: 0; }
.trezonic-core-error { margin: 13px 0 0; padding: 11px 13px; background: #fff1f0; color: #a31919; border: 1px solid #ffc9c4; border-radius: 9px; font-size: 13px; }
.trezonic-core-example { margin-top: 18px; font-size: 13px; }

.trezonic-core-upload-zone {
	display: grid;
	place-items: center;
	gap: 8px;
	min-height: 170px;
	padding: 20px;
	background: var(--trezonic-core-surface);
	border: 2px dashed color-mix(in srgb, var(--trezonic-core-navy) 26%, var(--trezonic-core-border));
	border-radius: 14px;
	text-align: center;
}

.trezonic-core-upload-zone.is-dragging { background: color-mix(in srgb, var(--trezonic-core-gold) 12%, white); border-color: var(--trezonic-core-gold); }
.trezonic-core-upload-zone label { font-weight: 800; }
.trezonic-core-upload-zone input { max-width: 100%; }
.trezonic-core-upload-zone small { color: var(--trezonic-core-muted); }
.trezonic-core-field input[type="range"] { min-height: 28px; padding: 0; border: 0; }
.trezonic-core-image-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 22px; }
.trezonic-core-image-preview { overflow: hidden; padding: 12px; background: var(--trezonic-core-surface); border: 1px solid var(--trezonic-core-border); border-radius: 11px; }
.trezonic-core-image-preview > span { display: block; margin-bottom: 8px; font-size: 12px; font-weight: 800; }
.trezonic-core-image-preview img { display: block; width: 100%; height: 230px; object-fit: contain; background: repeating-conic-gradient(#eceff3 0 25%, white 0 50%) 50% / 18px 18px; border-radius: 7px; }
.trezonic-core-image-preview p { margin: 8px 0 0; color: var(--trezonic-core-muted); font-size: 12px; }
.trezonic-core-download { margin-top: 14px; }
.trezonic-core-image-compressor .trezonic-core-privacy-note { margin: 20px 0 0; }

.trezonic-core-tool-description,
.trezonic-core-related-tools {
	max-width: 860px;
	margin: 44px auto 0;
}

.trezonic-core-tool-description h2,
.trezonic-core-related-tools h2 {
	margin: 0 0 16px;
	font-size: clamp(27px, 4vw, 38px);
	letter-spacing: -0.04em;
}

.trezonic-core-tool-description p,
.trezonic-core-tool-description li { color: color-mix(in srgb, var(--trezonic-core-black) 82%, var(--trezonic-core-muted)); }

@media (max-width: 760px) {
	.trezonic-core-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.trezonic-core-tool-card-grid { grid-template-columns: 1fr; }
}

@media (max-width: 580px) {
	.trezonic-core-tool-container { max-width: calc(100% - 24px); }
	.trezonic-core-tool-hero { grid-template-columns: 1fr; padding-top: 42px; }
	.trezonic-core-tool-toolbar { display: grid; }
	.trezonic-core-tool-actions { flex-wrap: wrap; }
	.trezonic-core-calculation-fields, .trezonic-core-compressor-controls, .trezonic-core-image-results { grid-template-columns: 1fr; }
	.trezonic-core-stat-grid { grid-template-columns: 1fr 1fr; }
}



/* Professional PDF workspace. */
.trezonic-core-single-pdf-tool .trezonic-core-tool-container { max-width: min(calc(100% - 32px), 1120px); }
.trezonic-core-single-pdf-tool .trezonic-core-tool-hero { max-width: 980px; padding-top: 50px; }
.trezonic-core-single-pdf-tool .trezonic-core-tool-hero .trezonic-core-card-icon { display: grid; width: 78px; height: 78px; place-items: center; color: #cf3d42; background: linear-gradient(145deg,#fff1f1,#ffe2e4); border: 1px solid #ffd0d3; border-radius: 22px; box-shadow: 0 12px 28px rgba(180,35,24,.12); }
.trezonic-core-single-pdf-tool .trezonic-core-tool-hero svg { width: 46px; height: 46px; }
.trezonic-core-single-pdf-tool .trezonic-core-tool-hero .trezonic-core-eyebrow { display: block; margin-bottom: 7px; color: #8a6e10; }
.trezonic-core-single-pdf-tool .trezonic-core-pdf-badge { display: inline-flex; margin-top: 12px; padding: 5px 9px; color: #735c0b; background: #fff5c2; border: 1px solid #f2dc73; border-radius: 999px; font-size: 9px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.trezonic-core-single-pdf-tool .trezonic-core-pdf-badge.is-new { color: #0c6b4c; background: #ddf8ec; border-color: #a9e6cd; }
.trezonic-core-pdf-tool { padding: clamp(20px,4vw,36px); border-radius: 24px; box-shadow: 0 24px 70px rgba(11,31,58,.11); }
.trezonic-core-pdf-tool [hidden] { display: none !important; }
.trezonic-core-pdf-tool .trezonic-core-tool-toolbar { align-items: flex-start; padding-bottom: 20px; border-bottom: 1px solid var(--trezonic-core-border); }
.trezonic-core-pdf-tool .trezonic-core-tool-toolbar .trezonic-core-eyebrow { display: block; margin-bottom: 5px; color: #8a6e10; font-size: 10px; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.trezonic-core-pdf-tool .trezonic-core-tool-toolbar h2 { font-size: 29px; }
.trezonic-core-pdf-workspace { display: grid; grid-template-columns: minmax(0,.9fr) minmax(320px,1.1fr); gap: 18px; align-items: stretch; }
.trezonic-core-pdf-tool .trezonic-core-upload-zone { display: flex; min-height: 285px; padding: 28px; flex-direction: column; justify-content: center; gap: 7px; color: #17253a; background: linear-gradient(155deg,#fbfcfe,#f3f6fa); border: 2px dashed #bac6d5; border-radius: 18px; transition: border-color .18s ease,box-shadow .18s ease,transform .18s ease; cursor: pointer; }
.trezonic-core-pdf-tool .trezonic-core-upload-zone:hover, .trezonic-core-pdf-tool .trezonic-core-upload-zone:focus-visible, .trezonic-core-pdf-tool .trezonic-core-upload-zone.is-dragging { background: #fffdf5; border-color: var(--trezonic-core-gold); box-shadow: inset 0 0 0 4px rgba(201,162,39,.08); outline: none; transform: translateY(-1px); }
.trezonic-core-upload-icon { display: grid; width: 62px; height: 62px; margin-bottom: 7px; place-items: center; color: #d13d42; background: #ffe9eb; border: 1px solid #ffd0d3; border-radius: 17px; }
.trezonic-core-upload-icon svg { width: 37px; height: 37px; }
.trezonic-core-pdf-tool .trezonic-core-upload-zone > strong { font-size: 20px; }
.trezonic-core-pdf-tool .trezonic-core-upload-zone > span:not(.trezonic-core-upload-icon) { color: #6c788a; font-size: 13px; }
.trezonic-core-pdf-tool .trezonic-core-upload-zone > label { margin: 11px 0 5px; cursor: pointer; }
.trezonic-core-pdf-tool .trezonic-core-upload-zone > input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); }
.trezonic-core-pdf-tool .trezonic-core-upload-zone > small { color: #778295; font-size: 11px; }
.trezonic-core-pdf-file-panel { min-height: 285px; padding: 16px; background: #f8fafc; border: 1px solid #e0e6ef; border-radius: 18px; }
.trezonic-core-pdf-file-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.trezonic-core-pdf-file-panel-head > strong { color: #17253a; font-size: 14px; }
.trezonic-core-pdf-file-panel-head > span { padding: 4px 8px; color: #657184; background: #e9edf3; border-radius: 999px; font-size: 10px; font-weight: 800; }
.trezonic-core-pdf-empty { display: grid; min-height: 215px; place-content: center; text-align: center; color: #8590a0; }
.trezonic-core-pdf-empty > span { font-size: 34px; font-weight: 300; }
.trezonic-core-pdf-empty p { margin: 4px 0 0; font-size: 12px; }
.trezonic-core-pdf-file-list { display: grid; gap: 8px; max-height: 300px; overflow: auto; }
.trezonic-core-pdf-file { display: grid; grid-template-columns: 18px 42px minmax(0,1fr) auto; gap: 9px; align-items: center; padding: 10px; background: #fff; border: 1px solid #dfe5ed; border-radius: 12px; box-shadow: 0 3px 8px rgba(16,24,40,.03); }
.trezonic-core-pdf-file.is-dragging { opacity: .5; }
.trezonic-core-pdf-file-handle { color: #8a94a4; cursor: grab; }
.trezonic-core-pdf-file-icon { display: grid; width: 42px; height: 42px; place-items: center; color: #b42318; background: #fff0f0; border-radius: 10px; font-size: 8px; font-weight: 900; }
.trezonic-core-pdf-file-info { min-width: 0; }
.trezonic-core-pdf-file-info strong, .trezonic-core-pdf-file-info small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.trezonic-core-pdf-file-info strong { color: #26364b; font-size: 12px; }
.trezonic-core-pdf-file-info small { margin-top: 2px; color: #7a8595; font-size: 10px; }
.trezonic-core-pdf-file-controls { display: flex; gap: 3px; }
.trezonic-core-pdf-file-controls button { display: grid; width: 27px; height: 27px; padding: 0; place-items: center; color: #596779; background: #f1f4f8; border: 0; border-radius: 8px; font-size: 13px; cursor: pointer; }
.trezonic-core-pdf-file-controls button:hover:not(:disabled) { color: #fff; background: var(--trezonic-core-navy); }
.trezonic-core-pdf-file-controls button:disabled { opacity: .35; cursor: default; }
.trezonic-core-pdf-options { margin-top: 18px; padding: 19px; background: #fbfcfd; border: 1px solid #e1e6ed; border-radius: 17px; }
.trezonic-core-pdf-options > h3 { margin: 0 0 15px; color: #17253a; font-size: 15px; }
.trezonic-core-pdf-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 0; }
.trezonic-core-pdf-options .trezonic-core-field > label { color: #435167; }
.trezonic-core-pdf-options output { color: #657184; font-size: 11px; }
.trezonic-core-option-note { margin: 12px 0 0; padding: 10px 12px; color: #665318; background: #fff8d9; border: 1px solid #eedf9a; border-radius: 10px; font-size: 11px; }
.trezonic-core-pdf-actions { display: flex; align-items: center; gap: 13px; margin-top: 18px; }
.trezonic-core-pdf-actions > span { color: #697588; font-size: 11px; }
.trezonic-core-pdf-progress { margin-top: 18px; padding: 14px 16px; background: #f6f8fb; border: 1px solid #e0e6ee; border-radius: 13px; }
.trezonic-core-pdf-progress > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; color: #425168; font-size: 11px; }
.trezonic-core-pdf-progress progress { display: block; width: 100%; height: 9px; overflow: hidden; appearance: none; border: 0; border-radius: 999px; }
.trezonic-core-pdf-progress progress::-webkit-progress-bar { background: #e3e8ef; }
.trezonic-core-pdf-progress progress::-webkit-progress-value { background: linear-gradient(90deg,var(--trezonic-core-navy),#2e659d); border-radius: 999px; }
.trezonic-core-pdf-progress progress::-moz-progress-bar { background: linear-gradient(90deg,var(--trezonic-core-navy),#2e659d); border-radius: 999px; }
.trezonic-core-pdf-error { margin-top: 16px; padding: 16px; color: #8f1d1d; background: #fff1f1; border: 1px solid #ffc8c8; border-radius: 13px; }
.trezonic-core-pdf-error > strong { font-size: 14px; }
.trezonic-core-pdf-error p { margin: 5px 0 11px; font-size: 12px; }
.trezonic-core-pdf-result { margin-top: 20px; padding: 20px; background: #f2fbf7; border: 1px solid #aee0c8; border-radius: 17px; }
.trezonic-core-pdf-result > header { display: flex; gap: 11px; align-items: center; }
.trezonic-core-pdf-result > header strong { color: #155c43; font-size: 20px; }
.trezonic-core-pdf-result > header p { margin: 3px 0 0; color: #527363; font-size: 12px; }
.trezonic-core-pdf-result-check { display: grid; width: 38px; height: 38px; flex: 0 0 auto; place-items: center; color: #fff; background: #16845e; border-radius: 999px; font-weight: 900; }
.trezonic-core-pdf-preview-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-top: 17px; }
.trezonic-core-pdf-preview-card { min-width: 0; margin: 0; padding: 8px; overflow: hidden; background: #fff; border: 1px solid #d6e7df; border-radius: 11px; }
.trezonic-core-pdf-preview-card canvas, .trezonic-core-pdf-preview-card img { display: block; width: 100%; height: 145px; object-fit: contain; background: #eef1f4; border-radius: 7px; }
.trezonic-core-pdf-preview-card figcaption { margin-top: 7px; overflow: hidden; color: #536174; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.trezonic-core-pdf-preview-card.is-unavailable > span { display: grid; height: 145px; place-items: center; color: #b42318; background: #fff0f0; border-radius: 7px; font-weight: 900; }
.trezonic-core-pdf-downloads { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 16px; }
.trezonic-core-pdf-tool .trezonic-core-privacy-note { margin: 18px 0 0; }
.trezonic-core-tool-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; padding: 0; list-style: none; counter-reset: pdf-step; }
.trezonic-core-tool-steps li { position: relative; min-height: 120px; padding: 48px 16px 16px; color: #445269; background: #f8fafc; border: 1px solid #e0e6ee; border-radius: 14px; counter-increment: pdf-step; }
.trezonic-core-tool-steps li::before { position: absolute; top: 13px; left: 15px; display: grid; width: 27px; height: 27px; place-items: center; content: counter(pdf-step); color: #fff; background: var(--trezonic-core-navy); border-radius: 8px; font-size: 11px; font-weight: 900; }
.trezonic-core-tool-long-copy { margin-top: 18px; }
.trezonic-core-tool-privacy { display: grid; grid-template-columns: 58px minmax(0,1fr); gap: 16px; max-width: 860px; margin: 32px auto 0; padding: 20px; color: #183f34; background: #effaf5; border: 1px solid #b8e3d1; border-radius: 16px; }
.trezonic-core-tool-privacy > span { display: grid; width: 58px; height: 58px; place-items: center; color: #147353; background: #d8f3e7; border-radius: 15px; }
.trezonic-core-tool-privacy svg { width: 33px; height: 33px; }
.trezonic-core-tool-privacy h2 { margin: 0 0 5px; font-size: 20px; }
.trezonic-core-tool-privacy p { margin: 0; color: #4d7165; font-size: 13px; line-height: 1.6; }
.trezonic-core-tool-faq { max-width: 860px; margin: 50px auto 0; }
.trezonic-core-tool-faq header h2 { margin: 4px 0 17px; font-size: clamp(27px,4vw,38px); letter-spacing: -.04em; }
.trezonic-core-tool-faq details { background: #fff; border: 1px solid #e0e6ed; border-radius: 13px; }
.trezonic-core-tool-faq details + details { margin-top: 9px; }
.trezonic-core-tool-faq summary { padding: 16px 18px; color: #1b2b40; font-weight: 800; cursor: pointer; }
.trezonic-core-tool-faq details p { margin: 0; padding: 0 18px 17px; color: #637083; line-height: 1.65; }
.trezonic-core-related-tools .trezonic-core-pdf-card .trezonic-core-card-icon svg { width: 34px; height: 34px; }
.trezonic-core-related-tools .trezonic-core-pdf-card .trezonic-core-card-icon { color: #cf3d42; background: #fff0f1; }
.trezonic-core-related-tools .trezonic-core-pdf-card-cta { display: inline-flex; gap: 6px; align-items: center; margin-top: 12px; padding: 7px 9px; color: #fff; background: var(--trezonic-core-navy); border-radius: 8px; font-size: 10px; font-weight: 900; }

@media(max-width:820px) {
	.trezonic-core-pdf-workspace { grid-template-columns: 1fr; }
	.trezonic-core-pdf-preview-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.trezonic-core-tool-steps { grid-template-columns: 1fr; }
	.trezonic-core-tool-steps li { min-height: 0; }
}
@media(max-width:600px) {
	.trezonic-core-pdf-grid { grid-template-columns: 1fr; }
	.trezonic-core-pdf-file { grid-template-columns: 14px 38px minmax(0,1fr); }
	.trezonic-core-pdf-file-controls { grid-column: 2 / -1; justify-content: flex-end; }
	.trezonic-core-pdf-actions { align-items: flex-start; flex-direction: column; }
	.trezonic-core-pdf-preview-grid { grid-template-columns: 1fr; }
	.trezonic-core-tool-privacy { grid-template-columns: 1fr; }
}

/* Business Forms 1.6.0 — focused document workspace. */
.trezonic-core-business-form { padding: clamp(16px, 2.5vw, 28px); }
.trezonic-core-form-toolbar { align-items: flex-start; }
.trezonic-core-form-toolbar .trezonic-core-tool-actions { flex-wrap: wrap; justify-content: flex-end; }
.trezonic-core-form-status { min-height: 22px; margin: -10px 0 14px; color: #187552; font-size: 13px; font-weight: 750; }
.trezonic-core-form-status[data-kind="error"] { color: #b42318; }
.trezonic-core-form-workspace { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(340px, .8fr); gap: 22px; align-items: start; }
.trezonic-core-form-editor { display: grid; gap: 16px; min-width: 0; }
.trezonic-core-form-panel { padding: 19px; background: #fbfcfe; border: 1px solid #e2e7ee; border-radius: 16px; }
.trezonic-core-form-panel-heading { display: flex; gap: 11px; align-items: flex-start; margin-bottom: 16px; }
.trezonic-core-form-panel-heading > span { display: grid; width: 30px; height: 30px; flex: 0 0 auto; place-items: center; color: #fff; background: var(--trezonic-core-navy); border-radius: 9px; font-size: 12px; font-weight: 900; }
.trezonic-core-form-panel-heading h3 { margin: 0; color: #17253a; font-size: 17px; letter-spacing: -.02em; }
.trezonic-core-form-panel-heading p { margin: 3px 0 0; color: #697588; font-size: 12px; }
.trezonic-core-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.trezonic-core-form-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.trezonic-core-form-grid .trezonic-core-field-wide { grid-column: 1 / -1; }
.trezonic-core-form-panel .trezonic-core-field input,
.trezonic-core-form-panel .trezonic-core-field select,
.trezonic-core-form-panel .trezonic-core-field textarea { width: 100%; min-height: 43px; padding: 9px 10px; color: #17253a; background: #fff; border: 1px solid #dbe2eb; border-radius: 9px; font: inherit; font-weight: 500; }
.trezonic-core-form-panel .trezonic-core-field textarea { min-height: 80px; resize: vertical; line-height: 1.5; }
.trezonic-core-form-panel .trezonic-core-field small { color: #778396; font-size: 10px; font-weight: 500; }
.trezonic-core-form-parties { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.trezonic-core-form-parties fieldset { min-width: 0; margin: 0; padding: 14px; background: #fff; border: 1px solid #dfe5ed; border-radius: 13px; }
.trezonic-core-form-parties legend { padding: 0 7px; color: #26364b; font-size: 12px; font-weight: 900; }
.trezonic-core-form-table-wrap { margin-bottom: 12px; overflow-x: auto; border: 1px solid #dde4ed; border-radius: 12px; }
.trezonic-core-entry-table { width: 100%; min-width: 590px; border-collapse: collapse; background: #fff; }
.trezonic-core-mileage-table { min-width: 980px; }
.trezonic-core-entry-table th { padding: 10px 8px; color: #536174; background: #f1f4f8; border-bottom: 1px solid #dde4ed; font-size: 10px; text-align: left; text-transform: uppercase; letter-spacing: .04em; }
.trezonic-core-entry-table td { padding: 7px; border-bottom: 1px solid #edf0f4; vertical-align: top; }
.trezonic-core-entry-table tr:last-child td { border-bottom: 0; }
.trezonic-core-entry-table input,
.trezonic-core-entry-table textarea { width: 100%; min-width: 74px; min-height: 38px; padding: 7px 8px; color: #17253a; background: #fff; border: 1px solid #dbe2eb; border-radius: 7px; font: inherit; font-size: 11px; }
.trezonic-core-entry-table textarea { min-width: 190px; resize: vertical; }
.trezonic-core-entry-table output { display: inline-block; min-width: 70px; padding: 8px 4px; color: #26364b; font-size: 11px; font-weight: 800; white-space: nowrap; }
.trezonic-core-row-remove { display: grid; width: 30px; height: 30px; padding: 0; place-items: center; color: #b42318; background: #fff1f1; border: 0; border-radius: 8px; font-size: 19px; cursor: pointer; }
.trezonic-core-row-remove:hover { color: #fff; background: #b42318; }
.trezonic-core-form-preview-column { min-width: 0; }
.trezonic-core-form-preview-sticky { position: sticky; top: 90px; }
.trezonic-core-form-preview-label { display: flex; justify-content: space-between; gap: 10px; margin: 0 0 8px; color: #526176; font-size: 11px; }
.trezonic-core-document-preview { min-height: 700px; padding: 30px; color: #1d2939; background: #fff; border: 1px solid #d9e0e8; border-radius: 3px; box-shadow: 0 18px 50px rgba(16, 24, 40, .13); font-family: Arial, Helvetica, sans-serif; font-size: 11px; line-height: 1.45; }
.trezonic-core-doc-header { display: flex; justify-content: space-between; gap: 20px; padding-bottom: 18px; border-bottom: 3px solid #0b1f3a; }
.trezonic-core-doc-header > div { display: flex; gap: 12px; align-items: center; }
.trezonic-core-doc-header span { display: block; color: #7a8698; font-size: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.trezonic-core-doc-header h3 { margin: 2px 0 0; color: #0b1f3a; font-size: 24px; line-height: 1; text-transform: uppercase; letter-spacing: -.03em; }
.trezonic-core-doc-logo { width: 58px; height: 58px; object-fit: contain; }
.trezonic-core-doc-header dl { min-width: 145px; margin: 0; }
.trezonic-core-doc-header dl > div { display: grid; grid-template-columns: 60px 1fr; gap: 8px; padding: 2px 0; }
.trezonic-core-doc-header dt { color: #7a8698; font-size: 8px; text-transform: uppercase; }
.trezonic-core-doc-header dd { margin: 0; color: #26364b; font-weight: 750; text-align: right; }
.trezonic-core-doc-parties { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; padding: 22px 0; }
.trezonic-core-doc-party small,
.trezonic-core-doc-notes small,
.trezonic-core-doc-work-info small { display: block; margin-bottom: 5px; color: #7b8798; font-size: 8px; font-weight: 900; text-transform: uppercase; letter-spacing: .07em; }
.trezonic-core-doc-party strong { display: block; color: #17253a; font-size: 13px; }
.trezonic-core-doc-party span { display: block; margin-top: 2px; color: #536174; }
.trezonic-core-doc-party p { margin: 5px 0 0; color: #536174; }
.trezonic-core-doc-work-info { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-bottom: 18px; padding: 12px; background: #f5f7fa; border: 1px solid #e3e8ef; border-radius: 8px; }
.trezonic-core-doc-work-info > div strong { display: block; font-size: 11px; }
.trezonic-core-doc-work-info > p { grid-column: 1 / -1; margin: 4px 0 0; }
.trezonic-core-doc-table-wrap { overflow: hidden; border: 1px solid #dfe5ec; border-radius: 5px; }
.trezonic-core-document-preview table { width: 100%; border-collapse: collapse; }
.trezonic-core-document-preview th { padding: 7px; color: #fff; background: #0b1f3a; font-size: 8px; text-align: left; text-transform: uppercase; }
.trezonic-core-document-preview td { padding: 7px; border-bottom: 1px solid #e7ebf0; vertical-align: top; }
.trezonic-core-document-preview td:last-child,
.trezonic-core-document-preview th:last-child { text-align: right; }
.trezonic-core-doc-totals { width: min(270px, 100%); margin: 14px 0 0 auto; }
.trezonic-core-doc-totals > div { display: flex; justify-content: space-between; gap: 20px; padding: 5px 2px; color: #536174; border-bottom: 1px solid #edf0f3; }
.trezonic-core-doc-totals > div strong { color: #26364b; }
.trezonic-core-doc-totals > div.grand { margin-top: 4px; padding: 9px; color: #fff; background: #0b1f3a; border: 0; border-radius: 4px; font-size: 13px; }
.trezonic-core-doc-totals > div.grand strong { color: #fff; }
.trezonic-core-doc-notes { display: grid; gap: 12px; margin-top: 20px; }
.trezonic-core-doc-notes section { padding: 10px 12px; background: #f7f9fb; border-left: 3px solid #c9a227; }
.trezonic-core-doc-notes p { margin: 0; }
.trezonic-core-doc-signatures { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 50px; margin-top: 55px; }
.trezonic-core-doc-signatures > div { padding-top: 8px; border-top: 1px solid #7a8698; }
.trezonic-core-doc-signatures span { color: #7a8698; font-size: 8px; text-transform: uppercase; }
.trezonic-core-legacy-package-grid,
.trezonic-core-legacy-tool-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; margin: 20px 0; }
.trezonic-core-legacy-package-card,
.trezonic-core-legacy-tool-card { display: grid; gap: 6px; padding: 18px; color: #17253a; background: #fff; border: 1px solid #e1e6ed; border-radius: 14px; text-decoration: none; }
.trezonic-core-legacy-package-card span,
.trezonic-core-legacy-tool-card span { color: #667085; font-size: 13px; }
.trezonic-core-legacy-package-card:hover,
.trezonic-core-legacy-tool-card:hover { border-color: #c9a227; transform: translateY(-2px); }

@media(max-width:1050px) {
	.trezonic-core-form-workspace { grid-template-columns: 1fr; }
	.trezonic-core-form-preview-sticky { position: static; }
	.trezonic-core-document-preview { min-height: 0; }
}
@media(max-width:760px) {
	.trezonic-core-form-toolbar { display: grid; }
	.trezonic-core-form-toolbar .trezonic-core-tool-actions { justify-content: flex-start; }
	.trezonic-core-form-grid,
	.trezonic-core-form-grid-3,
	.trezonic-core-form-parties { grid-template-columns: 1fr; }
	.trezonic-core-doc-header { display: grid; }
	.trezonic-core-doc-header dl { width: 100%; }
	.trezonic-core-doc-parties { grid-template-columns: 1fr; gap: 12px; }
	.trezonic-core-document-preview { padding: 18px; overflow-x: auto; }
	.trezonic-core-legacy-package-grid,
	.trezonic-core-legacy-tool-grid { grid-template-columns: 1fr; }
}

@media print {
	body.trezonic-core-printing-form * { visibility: hidden !important; }
	body.trezonic-core-printing-form .trezonic-core-form-print-target,
	body.trezonic-core-printing-form .trezonic-core-form-print-target .trezonic-core-document-preview,
	body.trezonic-core-printing-form .trezonic-core-form-print-target .trezonic-core-document-preview * { visibility: visible !important; }
	body.trezonic-core-printing-form .trezonic-core-form-print-target { position: absolute !important; inset: 0 auto auto 0 !important; width: 100% !important; margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; }
	body.trezonic-core-printing-form .trezonic-core-form-print-target .trezonic-core-form-preview-column { position: absolute; inset: 0; width: 100%; }
	body.trezonic-core-printing-form .trezonic-core-form-print-target .trezonic-core-form-preview-sticky { position: static; }
	body.trezonic-core-printing-form .trezonic-core-form-print-target .trezonic-core-form-preview-label { display: none !important; }
	body.trezonic-core-printing-form .trezonic-core-form-print-target .trezonic-core-document-preview { width: 100%; min-height: 0; padding: 12mm; border: 0; border-radius: 0; box-shadow: none; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
	@page { size: A4; margin: 0; }
}
