/* --- CONTACT PAGES --- */

/* --- FOLDABLE FORMS --- */
.accordion-section {
    max-width: 90vw;
    margin: 0 auto;
    padding: 2rem 1rem;
}

.section-header {
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
    position: relative;
    cursor: pointer;
    margin: 2rem 0 0.5rem;
    padding-bottom: 0.3rem;
    font-size: 1.4rem;
    border-bottom: 2px solid var(--accent2);
    width: 90%;
    transition: color 0.2s;
}

.section-header:hover {
    color: var(--accent1);
}

.form-section {
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transition:
		max-height 0.4s ease,
		opacity 0.4s ease;
	padding-left: 0rem;
	color: var(--fg);
	margin-bottom: 1rem;
}

.form-section.active {
	max-height: 750px;
	opacity: 1;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.section-header {
	position: relative;
	padding-right: 1.5rem;
	cursor: pointer;
}

.section-header.arrow-added::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 0;
	height: 0;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid var(--accent2); /* strzałka w dół */
	transform: translateY(-50%) rotate(0deg);
	transition: transform 0.3s ease;
}

.section-header.open.arrow-added::before {
	transform: translateY(-50%) rotate(-180deg); /* obrót w górę przy otwartej sekcji */
}

/* --- INPUTS --- */
input[type="text"],
input[type="email"],
textarea {
    width: 80%;
    background-color: #2a2a2a;
    color: var(--fg);
    border: 1px solid #555;
    padding: 0.5rem;
    font-family: inherit;
    resize: vertical;
    margin-left: 10px;
    margin-bottom: 1rem;
    border-radius: 4px;
    box-sizing: border-box;
}

button {
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
    background-color: var(--accent2);
    color: #000;
    border: none;
    padding: 0.5rem 1rem;
    cursor: pointer;
    font-weight: bold;
    transition: background 0.2s;
    border-radius: 4px;
}

.push-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-top: 1rem;
}

.push-buttons button {
	min-width: 110px;
	padding: 0.6rem 1rem;
	text-align: center;
	white-space: nowrap;
}

button:hover {
    background-color: var(--accent1);
}

.disabled-btn {
	background-color: #999 !important;
	color: #ccc !important;
	cursor: not-allowed !important;
	opacity: 0.6;
}
.disabled-btn:hover {
	background-color: #888 !important
	opacity: 0.4;
}

/* --- NOTIFICATIONS --- */
.notification {
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
    padding: 10px;
    margin-bottom: 15px;
    border-radius: 4px;
    font-weight: bold;
    text-align: center;
}

.notification.success {
    background-color: #2f7031;
    color: #dfffdd;
}

.notification.error {
    background-color: #702f2f;
    color: #ffdddd;
}

/* --- MEDIA --- */
@media (min-width: 100px) and (max-width: 370px) {
	input[type="text"],
	input[type="email"],
	textarea {
		font-size: 0.65rem;
	}
	.section-header {
		font-size: 1rem;
	}
}
