.c11a-wrap { max-width: 760px; margin: 0 auto; }
.c11a-form { font-family: inherit; }
.c11a-progress { display: flex; justify-content: space-between; margin-bottom: 24px; }
.c11a-step-dot {
	width: 32px; height: 32px; border-radius: 50%;
	background: #e2e2e2; color: #555; display: flex;
	align-items: center; justify-content: center;
	font-weight: 600; font-size: 13px; flex-shrink: 0;
	position: relative;
}
.c11a-step-dot.active { background: #2563eb; color: #fff; }
.c11a-step-dot.done { background: #16a34a; color: #fff; }

.c11a-step h3 { margin-top: 0; margin-bottom: 16px; font-size: 18px; }
.c11a-step h4 { margin: 16px 0 8px; font-size: 15px; }

.c11a-field { margin-bottom: 14px; display: flex; flex-direction: column; gap: 4px; }
.c11a-field label { font-weight: 600; font-size: 13px; }
.c11a-field input[type="text"],
.c11a-field input[type="tel"],
.c11a-field input[type="email"],
.c11a-field input[type="number"],
.c11a-field input[type="date"],
.c11a-field input[type="file"],
.c11a-field select,
.c11a-field textarea {
	padding: 8px 10px; border: 1px solid #ccc; border-radius: 6px; font-size: 14px;
}
.c11a-field textarea { min-height: 70px; }
.c11a-field.error input, .c11a-field.error select { border-color: #dc2626; }
.c11a-field-error { color: #dc2626; font-size: 12px; }

.c11a-radio-group { display: flex; gap: 12px; flex-wrap: wrap; }
.c11a-radio-card {
	border: 2px solid #ddd; border-radius: 8px; padding: 14px 20px;
	cursor: pointer; display: flex; align-items: center; gap: 8px;
}
.c11a-radio-card input { margin: 0; }
.c11a-radio-card:has(input:checked) { border-color: #2563eb; background: #eff6ff; }

.c11a-subject-group { margin-bottom: 16px; }
.c11a-subject-group h5 { margin: 0 0 6px; font-size: 14px; }
.c11a-subject-options label { display: inline-flex; align-items: center; gap: 4px; margin-right: 16px; margin-bottom: 6px; }
.c11a-subject-options label.c11a-subject-taken { opacity: .4; text-decoration: line-through; }
.c11a-hint { font-weight: 400; color: #666; font-size: 12px; }
.c11a-subject-note { color: #dc2626; font-size: 12px; margin-top: 4px; }

.c11a-nav { display: flex; justify-content: space-between; margin-top: 24px; }
.c11a-btn {
	background: #2563eb; color: #fff; border: none; border-radius: 6px;
	padding: 10px 22px; font-size: 14px; cursor: pointer;
}
.c11a-btn:hover { background: #1d4ed8; }
.c11a-btn-prev { background: #6b7280; }
.c11a-btn-prev:hover { background: #4b5563; }
.c11a-btn:disabled { opacity: .6; cursor: not-allowed; }

.c11a-message { padding: 12px 14px; border-radius: 6px; margin-bottom: 16px; font-size: 14px; }
.c11a-message.success { background: #dcfce7; color: #166534; }
.c11a-message.error { background: #fee2e2; color: #991b1b; }

.c11a-success { text-align: center; padding: 30px 20px; }
.c11a-success h3 { color: #16a34a; }

.c11a-notice-closed { background: #fef3c7; color: #92400e; padding: 14px; border-radius: 6px; }

.c11a-status-result { margin-top: 20px; padding: 16px; border: 1px solid #ddd; border-radius: 8px; }
.c11a-status-badge { display: inline-block; padding: 3px 10px; border-radius: 20px; font-size: 12px; font-weight: 600; text-transform: uppercase; }
.c11a-status-badge.pending { background: #fef3c7; color: #92400e; }
.c11a-status-badge.accepted { background: #dcfce7; color: #166534; }
.c11a-status-badge.rejected { background: #fee2e2; color: #991b1b; }
.c11a-status-badge.cancelled { background: #e5e7eb; color: #374151; }

@media print {
	.c11a-print-only-controls, .no-print { display: none !important; }

	/* Print only the application copy — hide the site's theme header,
	   footer, navigation, sidebars, and any other page chrome, no matter
	   how deeply .c11a-print-copy is nested inside the page's markup. */
	body.c11a-printing-copy * { visibility: hidden !important; }
	body.c11a-printing-copy .c11a-print-overlay,
	body.c11a-printing-copy .c11a-print-overlay * { visibility: visible !important; }
	body.c11a-printing-copy .c11a-print-overlay {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		width: 100% !important;
		margin: 0 !important;
	}
}
