.plantcoach-photo { border-top: 1px solid #d8e2d2; border-bottom: 1px solid #d8e2d2; margin: 0 0 24px; min-width: 0; }
.plantcoach-photo summary { cursor: pointer; padding: 14px 0; font-weight: 700; color: #183018; }
.plantcoach-photo__test { font-size: 12px; font-weight: 400; color: #5c695a; margin-left: 10px; }
.plantcoach-photo__body { padding-bottom: 18px; }
.plantcoach-photo__body label { display: grid; gap: 6px; font-size: 14px; font-weight: 600; min-width: 0; }
.plantcoach-photo__body input[type=file], .plantcoach-photo__body select { width: 100%; max-width: 100%; box-sizing: border-box; }
.plantcoach-photo__body select { border: 1px solid #b9c8b5; border-radius: 4px; padding: 9px 10px; background: #fff; color: #183018; font: inherit; min-height: 42px; }
.plantcoach-photo__body small, .plantcoach-photo__privacy { font-size: 12px; font-weight: 400; color: #5c695a; line-height: 1.5; }
.plantcoach-photo__privacy { max-width: 680px; margin: 10px 0 14px; }
.plantcoach-photo__preview { margin: 16px 0; }
.introgreen-plantcoach__photo-context { display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 12px; align-items: start; margin: 12px 0 16px; min-width: 0; }
.introgreen-plantcoach__photo-context > div { min-width: 0; overflow-wrap: anywhere; }
.introgreen-plantcoach__photo-context strong { display: block; margin-bottom: 4px; }
.introgreen-plantcoach__advice-photo { position: relative; width: 84px; }
.introgreen-plantcoach__advice-photo img { display: block; width: 100%; height: auto; border-radius: 4px; }
.introgreen-plantcoach__advice-photo .plantcoach-photo__point { width: 12px; height: 12px; border-width: 2px; }
.plantcoach-photo__image-wrap { display: table; position: relative; max-width: 100%; margin: 8px 0; }
.plantcoach-photo__image-wrap img { display: block; height: auto; width: auto; max-width: 100%; max-height: 350px; cursor: crosshair; }
.plantcoach-photo__point { position: absolute; transform: translate(-50%, -50%); width: 22px; height: 22px; border: 3px solid #fff; border-radius: 50%; outline: 2px solid #23612d; background: #23612d; pointer-events: none; }
.plantcoach-photo__body .plantcoach-photo__consent { display: flex; align-items: flex-start; gap: 8px; margin: 14px 0 0; font-weight: 400; line-height: 1.45; }
.plantcoach-photo__consent input { flex: 0 0 auto; margin-top: 3px; }
.plantcoach-photo__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.plantcoach-photo__upload-choice { display: grid; gap: 8px; min-width: 0; }
.plantcoach-photo__upload-choice > span { font-size: 14px; font-weight: 600; }
.plantcoach-photo__body .plantcoach-photo__camera-button { display: none; }
@media (max-width: 640px), (pointer: coarse) {
    .plantcoach-photo__body .plantcoach-photo__camera-button { display: inline-block; }
    .plantcoach-photo__upload-choice button { min-height: 44px; }
}
@media (max-width: 640px) {
    .introgreen-plantcoach:not(.introgreen-plantcoach--floating) .introgreen-plantcoach__message--answer {
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        grid-template-columns: minmax(0, 1fr);
    }
    .introgreen-plantcoach:not(.introgreen-plantcoach--floating) .introgreen-plantcoach__message--answer > * {
        box-sizing: border-box;
        min-width: 0;
        max-width: 100%;
    }
    .plantcoach-photo__preview,
    .plantcoach-photo [data-photo-role=observations],
    .introgreen-plantcoach__message--answer,
    .introgreen-plantcoach__messages { scroll-margin-top: 88px; }
    .plantcoach-photo__image-wrap img { max-height: min(350px, 50svh); }
    .introgreen-plantcoach:not(.introgreen-plantcoach--floating) .introgreen-plantcoach__messages {
        max-height: none;
        overflow: visible;
    }
}
.plantcoach-photo__body button { background: #2f6e35; border: 1px solid #2f6e35; border-radius: 4px; color: #fff; padding: 10px 14px; cursor: pointer; font: inherit; font-weight: 600; min-height: 42px; }
.plantcoach-photo__body button[type=button] { background: #fff; color: #295c30; }
.plantcoach-photo__body button:disabled { opacity: .55; cursor: not-allowed; }
.plantcoach-photo__status { color: #335b36; font-size: 14px; line-height: 1.45; margin: 14px 0; }
.plantcoach-photo__status.is-error { color: #a32828; }
.plantcoach-photo__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 14px 0 18px; }
.plantcoach-photo__questions h3 { font-size: 18px; margin: 14px 0 8px; }
.plantcoach-photo__choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 16px 0; }
.plantcoach-photo__choices fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.plantcoach-photo__choices legend { font-size: 14px; font-weight: 600; margin-bottom: 8px; }
.plantcoach-photo__body .plantcoach-photo__choices label,
.plantcoach-photo__body .plantcoach-photo__easy { display: flex; align-items: center; gap: 10px; min-height: 42px; font-weight: 400; cursor: pointer; }
.plantcoach-photo__choices input, .plantcoach-photo__easy input { flex: 0 0 auto; margin: 0; accent-color: #2f6e35; }
.plantcoach-photo__preferences { border-top: 1px solid #d8e2d2; margin-bottom: 18px; }
.plantcoach-photo [hidden] { display: none !important; }
.plantcoach-photo__questions > p { font-size: 14px; line-height: 1.5; }
@media (max-width: 620px) { .plantcoach-photo__fields, .plantcoach-photo__choices { grid-template-columns: minmax(0, 1fr); } }
