/* d1Clique Project Hub - Briefing public UI (isolated from theme styles) */
.d1bf-form,
.d1bf-form *,
.d1bf-success,
.d1bf-success * {
	box-sizing: border-box;
}

.d1bf-form {
	--d1-primary: #5a3e9a;
	--d1-accent: #c04a9a;
	--d1-cyan: #00adee;
	--d1-text: #1e1b2e;
	--d1-muted: #6b6b7d;
	--d1-border: #dfe1ea;
	--d1-bg-soft: #f7f7fb;
	max-width: 900px;
	margin: 0 auto;
	padding: 32px;
	background: #fff;
	color: var(--d1-text);
	border: 1px solid #e7e7ee;
	border-radius: 18px;
	box-shadow: 0 15px 45px rgba(30, 27, 46, .08);
	font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 400;
	text-align: left;
}

.d1bf-form button,
.d1bf-form input,
.d1bf-form select,
.d1bf-form textarea {
	font-family: inherit !important;
}

.d1bf-form-heading { margin-bottom: 22px; }
.d1bf-form-heading h2 {
	margin: 0 0 6px !important;
	padding: 0 !important;
	color: var(--d1-text) !important;
	font: 600 28px/1.25 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	letter-spacing: -.02em;
}
.d1bf-form-heading p {
	margin: 0 !important;
	color: var(--d1-muted) !important;
	font-size: 16px !important;
	line-height: 1.55 !important;
}

.d1bf-progress {
	height: 8px;
	background: #ececf3;
	border-radius: 999px;
	overflow: hidden;
	margin: 0 0 28px;
}
.d1bf-progress span {
	display: block;
	height: 100%;
	background: linear-gradient(90deg, var(--d1-cyan), var(--d1-primary));
	transition: width .3s ease;
}

.d1bf-step { display: none; }
.d1bf-step.is-active { display: block; }
.d1bf-step h3 {
	margin: 0 0 22px !important;
	padding: 0 !important;
	color: var(--d1-text) !important;
	font-size: 22px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
}

.d1bf-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 18px;
}

.d1bf-field {
	grid-column: span 12;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 7px !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--d1-text) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}
.d1bf-field > span:first-child {
	display: inline-flex !important;
	align-items: baseline;
	gap: 3px;
	min-height: 21px;
	color: var(--d1-text) !important;
	font: 600 15px/1.4 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	visibility: visible !important;
	opacity: 1 !important;
}
.d1bf-field b {
	display: inline !important;
	position: static !important;
	margin: 0 !important;
	color: var(--d1-accent) !important;
	font: inherit !important;
}
.d1bf-field small {
	display: block;
	color: var(--d1-muted) !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
}

.d1bf-width-25 { grid-column: span 3; }
.d1bf-width-33 { grid-column: span 4; }
.d1bf-width-50 { grid-column: span 6; }
.d1bf-width-66 { grid-column: span 8; }
.d1bf-width-75 { grid-column: span 9; }
.d1bf-width-100 { grid-column: span 12; }

.d1bf-form .d1bf-field input:not([type="radio"]):not([type="checkbox"]),
.d1bf-form .d1bf-field select,
.d1bf-form .d1bf-field textarea {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 13px 14px !important;
	border: 1px solid var(--d1-border) !important;
	border-radius: 9px !important;
	background: #fff !important;
	color: var(--d1-text) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	box-shadow: none !important;
	outline: 0 !important;
	appearance: auto;
}
.d1bf-form .d1bf-field input::placeholder,
.d1bf-form .d1bf-field textarea::placeholder {
	color: #77788a !important;
	opacity: 1 !important;
	font-weight: 400 !important;
}
.d1bf-form .d1bf-field input:focus,
.d1bf-form .d1bf-field select:focus,
.d1bf-form .d1bf-field textarea:focus {
	border-color: var(--d1-primary) !important;
	box-shadow: 0 0 0 3px rgba(90, 62, 154, .13) !important;
}
.d1bf-form .d1bf-field textarea { resize: vertical; min-height: 130px; }

.d1bf-choice-group {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px 18px !important;
	color: var(--d1-text) !important;
	font-weight: 400 !important;
}
.d1bf-choice-group label {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 7px !important;
	margin: 0 !important;
	color: var(--d1-text) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
}
.d1bf-form .d1bf-choice-group input[type="radio"],
.d1bf-form .d1bf-choice-group input[type="checkbox"] {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	accent-color: var(--d1-primary);
}

.d1bf-actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	margin-top: 25px;
}
.d1bf-actions button {
	min-height: 46px;
	border: 0 !important;
	border-radius: 9px !important;
	padding: 13px 22px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	cursor: pointer;
	text-decoration: none !important;
	transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.d1bf-actions button:hover { transform: translateY(-1px); box-shadow: 0 9px 22px rgba(90, 62, 154, .18); }
.d1bf-actions button:focus-visible { outline: 3px solid rgba(0, 173, 238, .35) !important; outline-offset: 2px; }
.d1bf-actions button[hidden] { display: none !important; }
.d1bf-prev { background: #ececf3 !important; color: var(--d1-text) !important; }
.d1bf-next,
.d1bf-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-left: auto;
	color: #fff !important;
	background: linear-gradient(90deg, var(--d1-cyan), var(--d1-primary)) !important;
}

.d1bf-success {
	max-width: 900px;
	margin: 0 auto 20px;
	padding: 18px;
	border-radius: 12px;
	background: #ecfdf3;
	color: #14532d;
	border: 1px solid #a7f3c2;
	font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

@media (max-width: 700px) {
	.d1bf-form { padding: 22px; border-radius: 14px; }
	.d1bf-grid { grid-template-columns: 1fr; }
	.d1bf-field,
	.d1bf-width-25,
	.d1bf-width-33,
	.d1bf-width-50,
	.d1bf-width-66,
	.d1bf-width-75,
	.d1bf-width-100 { grid-column: auto; }
	.d1bf-actions { flex-wrap: wrap; }
	.d1bf-actions button { width: 100%; margin-left: 0; }
}
