body {
    font-family: Arial, sans-serif;
    line-height: 1.6;
    margin: 0;
    padding: 20px;
    background-color: #1f1f1f;
    color: #e8e8e8;
    font-family: "Roboto", sans-serif, Arial;
    font-optical-sizing: auto;
}


.roboto-<uniquifier> {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

.business-header {
    background-color: #1a1a1a;
    padding: 24px;
    border-radius: 8px;
    /* box-shadow: 0 2px 4px rgba(0,0,0,0.1); */
    max-width: 480px;
    margin: 20px auto;
}

.business-header p a:link, .business-header p a:active, .business-header p a:visited, .business-header p a:hover {
color: #e8e8e8; text-decoration:none;
}
.business-header p a:hover { text-decoration:underline; }

.business-header h1 {
    margin-top: 0;
    color: #e8e8e8;
    font-size: 25px;
    margin-bottom: 0px;
}

.kategoriestyle { font-size:14px; margin-top:0; padding-top:0; }

.review-form {
    background-color: #1a1a1a;
    border-radius: 8px;
    /* box-shadow: 0 2px 4px rgba(0,0,0,0.2); */
    padding: 24px;
    max-width: 480px;
    margin: 20px auto;
}

.review-form h2 {
    font-size: 22px;
    margin-bottom: 16px;
    color: #e8e8e8;
    margin-top: 0px;
}

.star-rating-input {
    margin-bottom: 16px;
}

.star-rating-control {
    display: inline-block;
}

.star-rating-stars {
    display: inline-block;
    vertical-align: middle;
}

.star {
    display: inline-block;
    width: 30px;
    height: 30px;
    background-size: 30px 30px;
    cursor: pointer;
    background-repeat: no-repeat;
    background-position: center;
}

.star:not(.active) {
    background-image: url('data:image/svg+xml;charset=UTF-8,%3csvg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 24 24"%3e%3cpath d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z" fill="%23e0e0e0" stroke="%23bdbdbd" stroke-width="0.5"%3e%3c/path%3e%3c/svg%3e');
}

.star.active {
    background-image: url('data:image/svg+xml;charset=UTF-8,%3csvg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 24 24"%3e%3cpath d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z" fill="%23fdd835"%3e%3c/path%3e%3c/svg%3e');
}
.star + .star {
    margin-left: 4px;
}

.rating-text {
    display: inline-block;
    vertical-align: middle;
    margin-left: 8px;
    font-size: 14px;
    color: #5f6368;
}

.review-text-container {
    margin-bottom: 16px;
    max-width:95%;
}

#review-text {
    width: 100%;
    height: 100px;
    padding: 8px;
    border: 1px solid #BDC1C6;
    background: #1f1f1f;
    color: #bdc1c6;
    border-radius: 4px;
    resize: vertical;
    font-family: Arial, sans-serif;
    font-size: 1rem;
    outline: none; /* verhindert den zusätzlichen Browser-Fokusrahmen */
}

/* Beim Hover */
#review-text:hover {
    border: 1px solid #F8F9FA;
}

/* Beim Fokus (Klick in die Textarea) */
#review-text:focus {
    border: 2px solid #8AB4F8;
    outline: none; /* sicherstellen, dass wirklich kein zusätzliches outline da ist */
}

   
#review-name {
    width: 240px;
    padding: 8px;
    border: 1px solid #BDC1C6;
    background: #1f1f1f;
    color: #bdc1c6;
    border-radius: 4px;
    font-family: Arial, sans-serif;
    font-size: 1rem;
    outline: none; /* verhindert den zusätzlichen Browser-Fokusrahmen */
}

/* Beim Hover */
#review-name:hover {
    border: 1px solid #F8F9FA;
}

/* Beim Fokus (Klick in die Textarea) */
#review-name:focus {
    border: 2px solid #8AB4F8;
    outline: none; /* sicherstellen, dass wirklich kein zusätzliches outline da ist */
}

.post-review-btn {
    background-color: #8ab4f8;
    color: #202124;
    border: none;
    border-radius: 4px;
padding: 11px 25px;
  font-size: 17px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.2s;
}

.post-review-btn:hover {
    background-color: #9DC0F9;
}

.post-review-btn:disabled {
    background-color: #c5d3e8;
    cursor: not-allowed;
}
.reviews {
    background-color: white;
    padding: 24px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    margin: 20px auto;
    max-width: 480px;
}

.review {
    border-bottom: 1px solid #e0e0e0;
    padding: 15px 0;
}

.review:last-child {
    border-bottom: none;
}

.helpful-btn {
    background-color: #1a73e8;
    color: white;
    border: none;
    padding: 5px 10px;
    border-radius: 4px;
    cursor: pointer;
}

.helpful-count {
    margin-left: 10px;
    color: #5f6368;
}

.star-rating {
    display: inline-block;
    direction: rtl;
    unicode-bidi: bidi-override;
}

.star-rating input {
    display: none;
}

.star-rating label {
    display: inline-block;
    padding: 0 0.1em;
    color: #ddd;
    font-size: 2em;
    cursor: pointer;
}

.star-rating label:before {
    content: "\f005";
    font-family: FontAwesome;
}

.star-rating input:checked ~ label,
.star-rating:not(:checked) > label:hover,
.star-rating:not(:checked) > label:hover ~ label {
    color: #fabb05;
}

.star-rating-display {
    position: relative;
    display: inline-block;
    font-size: 1.2em;
}

.star-rating-display:before {
    content: "\f005\f005\f005\f005\f005";
    font-family: FontAwesome;
    color: #ddd;
}

.star-rating-display:after {
    content: "\f005\f005\f005\f005\f005";
    font-family: FontAwesome;
    color: #fabb05;
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    width: var(--rating-percent, 0%);
}

.success {
color: #e8e8e8;
font-weight: normal;
}

.error {
color: #e8e8e8;
    font-weight: normal;
}

.container {
    background-color: #1a1a1a;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    padding: 24px;
    max-width: 480px;
    margin: 20px auto;
}
