/* Button: UMSCHALTEN  - Grün */
.btn-toggle { 
    display: inline-block; 
    padding: 10px 30px; 
    background: transparent; 
    color: var(--color-accent); 
    border: 1px solid rgba(146, 157, 104, 0.8); 
    border-radius: var(--border-radius-small); 
    text-transform: uppercase; 
    font-size: 0.85rem; 
    letter-spacing: 2px; 
    cursor: pointer; 
    position: relative; 
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); 
    overflow: hidden; 
}

.btn-toggle::before, .btn-toggle::after { 
    content: ""; 
    position: absolute; 
    width: 0; 
    height: 1px; 
    background: var(--color-accent); 
    transition: all 0.4s ease; 
}

.btn-toggle::before { 
    top: 0; 
    left: 0; 
}

.btn-toggle::after { 
    bottom: 0; 
    right: 0; 
}

.btn-toggle:hover { 
    border-color: var(--color-accent); 
    background: rgba(232, 226, 208, 0.1); 
    font-weight: bold; 
    letter-spacing: 1.86px; 
}

.btn-toggle:hover::before, .btn-toggle:hover::after { 
    width: 100%; 
}


.edit-image-preview { 
    border: 1px solid var(--color-accent); 
    border-radius: 4px; 
    width: 50px; 
    height: auto; 
    display: flex; 
    align-items: center; 
    gap: 15px; 
    background: #222; 
    padding: 10px; 
    border-radius: 4px; 
    margin-top: 10px; 
}

.edit-image-preview img { 
    height: 60px; 
    border-radius: 3px; 
    border: 1px solid #444; 
}
#form-container { 
    display: none; 
    background: var(--color-bg); 
    padding: 20px; 
    border: 1px solid #8A9A5B; 
    margin-bottom: 30px; 
    border-radius: 5px; 
}
.form-group { 
    margin-bottom: 15px; 
}
.form-group label { 
    display: block; 
    margin-bottom: 5px; 
    color: #8A9A5B; 
}
.form-group input { 
    width: 100%; 
    padding: 10px; 
    background: #222; 
    border: 1px solid #444; 
    color: #fff; 
    box-sizing: border-box; 
    display: block;
}
.char-counter {
	font-size: 0.7em;
	color: var(--color-text2);
}
.current_chars {
	font-size: 0.7em;
	color: var(--color-text2);
}
.form-group textarea { 
    width: 100%; 
    padding: 10px; 
    background: #222; 
    border: 1px solid #444; 
    color: #fff; 
    box-sizing: border-box; 
    resize: vertical; 
    min-height: 100px; 
    max-height: 400px; 
}	

.form-footer { 
    display: flex; 
    justify-content: flex-end; 
    align-items: center; 
    gap: 15px; 
    margin-top: 20px; 
}
.form-hint { 
    display: block; 
    margin-top: 5px; 
    font-size: 0.75rem; 
    color: var(--color-accent);
}
.form-user-avatar { 
    width: 60px; 
    height: 60px; 
    border-radius: 50%; 
    object-fit: cover; 
    border: 2px solid #8A9A5B; 
    flex-shrink: 0; 
}
.name-input-wrapper { 
    flex-grow: 1; 
}
.review-content-wrapper { 
    display: flex; 
    flex-wrap: wrap; 
	gap: 10px;
}
.review-card { 
    background: var(--bg-3d); 
    border: 1px solid var(--color-accent); 
    padding: 20px; 
    margin-bottom: 25px; 
    border-radius: 5px; 
}

.review-meta { 
    display: flex; 
    align-content: flex-start; 
    align-items: center; 
    margin-bottom: 15px; 
    font-size: 1.0rem; 
    color: var(--color-text-highlight); 
    gap: 15px;
}



.review-body { 
    flex: 1; 
    min-width: 250px; 
	}

.review-title { 
    font-weight: bold; 
    display: block; 
    color: var(--color-accent); 
    font-size: 1.1rem; 
	width: 100%;
	border-bottom: 1px solid var(--color-stars);
}

.review-text { 
    display: flex; 
    flex: 1; 
    line-height: 1.5; 
}



.review-actions { 
    display: flex; 
    justify-content: flex-end; 
    gap: 10px; 
    margin-top: 15px; 
    border-top: 1px solid #222; 
    padding-top: 10px; 
}



.review-date {
    margin-left: 5px; 
    color: var(--color-text-muted); 
    font-size: 0.85rem;
}
.review-image-container { 
    display: flex; 
    justify-content: center; 
    max-width: 33%; 
    max-height: 400px; 
    padding: 0; 
	padding-bottom: 15px;
    margin: auto;
}

.review-image-container img { 
	display: flex;
    border-radius: 8px; 
    max-width: 100%; 
    max-height: 100%; 
    border: 3px solid var(--color-section3); 
    box-shadow: 4px 4px 12px rgba(240,234,214,0.2); 
	margin: auto;
}
.user-info-row { 
    display: flex; 
    align-items: center; 
    gap: 15px; 
}
.review-user-info { 
    display: flex; 
    align-items: center; 
    gap: 12px; 
}

.review-user-pic { 
    width: 60px; 
    height: 60px; 
    border-radius: 50%; 
    border: 2px solid #8A9A5B; 
    object-fit: cover; 
    background-color: #333; 
    margin-right: 5px;
}