/* Site forms (Contact Us on the home page, Add your pet's star on Stars over the Meadow).
   Styled to match the WordPress forms they replace (weForms + Forminator, Oct 2026). */

.tmf-form-wrap form { margin: 0; text-align: left; }
.tmf-field { margin-bottom: 18px; }
.tmf-row { display: flex; gap: 12px; }
.tmf-row > div { flex: 1 1 0; min-width: 0; }
.tmf-form-wrap input[type=text],
.tmf-form-wrap input[type=email],
.tmf-form-wrap textarea { width: 100%; box-sizing: border-box; font-family: Nunito, sans-serif; }
.tmf-form-wrap textarea { resize: vertical; }
.tmf-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.tmf-status { margin-top: 14px; font-weight: 600; }
.tmf-status:empty { display: none; }
.tmf-done { padding: 14px 16px; border-radius: 12px; font-weight: 600; }
.tmf-form-wrap button[disabled] { opacity: 0.6; cursor: wait; }

/* gold logo star after required labels (same mark as the WordPress forms) */
.tmf-req { display: inline-block; width: 15px; height: 15px; margin-left: 4px; vertical-align: middle; line-height: 0; font-size: 0; color: transparent;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='313.82 43.42 70.24 70.24'%3E%3Cpath fill='%23d2b53d' stroke='%23d2b53d' stroke-width='2.5' stroke-linejoin='round' d='M 351.00 73.59 L 352.18 47.64 L 353.32 73.59 L 366.42 62.16 L 354.95 75.23 L 383.05 76.41 L 354.94 77.55 L 366.38 90.65 L 353.31 79.18 L 352.13 109.43 L 351 79.17 L 337.89 90.61 L 349.36 77.54 L 314.81 76.35 L 349.37 75.22 L 337.92 62.12 Z'/%3E%3C/svg%3E") center / contain no-repeat; }

/* Contact Us: light fields straight over the dog photo */
.tmf-contact label { display: block; color: #002366; font-size: 20px; font-weight: 700; line-height: 30px; margin: 0 0 5px; }
.tmf-contact .tmf-sub { display: block; color: #002366; font-size: 12px; font-weight: 700; line-height: 1.4; padding-top: 5px; }
.tmf-contact input[type=text],
.tmf-contact input[type=email],
.tmf-contact textarea { background: #fafafa; border: 1px solid #ddd; border-radius: 0; box-shadow: inset 0 1px 1px rgba(0,0,0,.1); color: #333; font-size: 20px; line-height: 30px; padding: 5px; }
.tmf-contact input[type=text], .tmf-contact input[type=email] { height: 42px; }
.tmf-contact textarea { height: 156px; }
.tmf-contact button { background: #002366; border: 1px solid #002366; border-radius: 12px; box-shadow: 0 1px 0 #006799; color: #fff; font-family: Nunito, sans-serif; font-size: 16px; line-height: 30px; padding: 5px 15px; }
.tmf-contact .tmf-status { color: #002366; }
.tmf-contact .tmf-done { background: rgba(255,255,255,.85); color: #002366; }

/* Add your pet's star: dark like the night sky */
.tmf-star label { display: block; color: #f4f1ea; font-size: 15px; font-weight: 600; line-height: 1.7; margin: 0; }
.tmf-star .tmf-desc { color: #d9d4e6; font-size: 12px; line-height: 18px; margin: 0 0 5px; }
.tmf-star input[type=text],
.tmf-star input[type=email],
.tmf-star textarea { background: #fff; border: 1px solid #d9d4e6; border-radius: 10px; color: #2b2a3d; font-size: 16px; padding: 9px; }
.tmf-star textarea { height: 140px; }
.tmf-star .tmf-file { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.tmf-star .tmf-file-btn { background: #f4f1ea; border-radius: 12px; color: #2b2a3d; cursor: pointer; font-size: 14px; font-weight: 600; padding: 10px 14px; margin: 0; display: inline-block; line-height: 1.4; }
.tmf-star .tmf-file-name { color: #d9d4e6; font-size: 14px; }
.tmf-star input[type=file] { position: absolute; width: 1px; height: 1px; opacity: 0; }
.tmf-star .tmf-consent { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; cursor: pointer; }
.tmf-star .tmf-consent input { margin-top: 6px; width: 18px; height: 18px; flex: 0 0 auto; }
.tmf-star button { background: #f6e7b0; border: 0; border-radius: 12px; color: #2b2a3d; font-family: Nunito, sans-serif; font-size: 17px; font-weight: 700; padding: 12px 32px; }
.tmf-star .tmf-status { color: #f6e7b0; }
.tmf-star .tmf-done { background: rgba(255,255,255,.08); color: #f4f1ea; }

@media (max-width: 480px) { .tmf-contact .tmf-row { gap: 8px; } }

/* The theme's site-wide "label, p { color: navy }" rule carries an id inside :not(), so it outranks
   plain class selectors; the night-sky form needs its light text to win. */
.tmf-star label, .tmf-star .tmf-consent span { color: #f4f1ea !important; }
.tmf-star .tmf-desc, .tmf-star .tmf-file-name { color: #d9d4e6 !important; }
.tmf-star .tmf-file-btn { color: #2b2a3d !important; }
.tmf-star .tmf-done { color: #f4f1ea !important; }
