#bp-tarjouslomake label { display:block; margin-top:10px; font-weight:600; }
#bp-tarjouslomake input, #bp-tarjouslomake textarea { width:100%; padding:6px; }
.bp-chip { display:inline-block; background:#007da3; padding:4px 8px; margin:3px; border-radius:4px; cursor:pointer; }
.bp-suggest { list-style:none; border:1px solid #ccc; margin:0; padding:0; background:#ebebeb; max-height:150px; overflow:auto; position:absolute; z-index:99; min-width: 250px; color: #342ffd; }
.bp-suggest li { padding:4px 6px; cursor:pointer; }
.bp-suggest li:hover { background:#f0f0f0; }

#bp-tarjouslomake {}

#bp-tarjouslomake fieldset {
  margin: 0;
  border: 1px solid #007da3;
}

#bp-tarjouslomake button[type="submit"] {
    color: #000;
    background-color: #eab608;
    font-weight: bold;
    padding: 0.8em 1em;
    margin: 1em 0em;
    border-radius: 0.5em;
}


/* Etusivu */
body.home #bp-tarjouslomake { max-width: 900px; margin: 2rem auto; padding: 1rem; border:1px solid #ddd; }

/* --- HUOLTOTYYPPI-VALINTA --- */
#bp-huoltotyypit {
  margin-top: 20px;
}

.bp-category {
  margin-bottom: 10px;
}

/* pääkategoriapainikkeet */
.bp-cat-btn {
  display: inline-block;
  background: #007da3;
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 8px 16px;
  font-weight: 600;
  margin: 4px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.bp-cat-btn:hover {
  background: #007da3;
}
.bp-cat-btn.active {
  background: #12a53a; /* vihreä aktiivinen */
}

/* alikategoriat */
.bp-subcats {
  background: #f6f6f6;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 10px;
  margin-top: 8px;
  margin-left: 0;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

/* alikategorian napit */
.bp-sub-btn {
  display: inline-block;
  background: #e0e0e0;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 6px 12px;
  margin: 4px;
  cursor: pointer;
  transition: background 0.2s;
}
.bp-sub-btn:hover {
  background: #d8d8d8;
}
.bp-sub-btn.active {
  background: #12a53a;
  color: #fff;
  border-color: #12a53a;
}

/* lisätietokenttä */
.bp-sub-note {
  display: block;
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 6px;
  margin-top: 8px;
  font-size: 0.95em;
}

.bp-sub-note.hidden,
.bp-subcats.hidden {
  display: none;
}

/* pieni otsikko ja visuaalinen hierarkia */
#bp-huoltotyypit legend {
  font-size: 1.2em;
  font-weight: 600;
  margin-bottom: 10px;
  color: #fff;
}


.bp-cat-btn::before {
  content: '+ ';
}
.bp-cat-btn.active::before {
  content: '✓ ';
}
.bp-sub-btn::before {
  content: '+ ';
}
.bp-sub-btn.active::before {
  content: '✓ ';
}


/* Lomake Spinner */
.bp-loading-spinner {
    border: 3px solid #fff;
    border-top: 3px solid #999;
    border-radius: 50%;
    width: 14px;
    height: 14px;
    display: inline-block;
    animation: bp-spin 0.6s linear infinite;
    vertical-align: middle;
    margin-right: 6px;
}

@keyframes bp-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
