.procurement-panel { margin: 1.5rem 0; border: 1px solid var(--line, #d8dfd9); border-radius: 18px; background: #fff; overflow: hidden; }
.procurement-panel > summary { cursor: pointer; padding: 1.3rem 1.5rem; color: var(--green, #143d34); font-weight: 750; font-size: 1.08rem; }
.procurement-panel[open] > summary { border-bottom: 1px solid var(--line, #d8dfd9); background: #f5f8f3; }
.procurement-content { padding: 1.5rem; }
.procurement-content > p:first-child { margin-top: 0; max-width: 80ch; line-height: 1.6; }
.procurement-content h3 { color: #173e34; margin: 1.5rem 0 .7rem; font-size: 1rem; }
.procurement-companies { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 1.1rem 0 1.6rem; }
.procurement-company { border: 1px solid #d8e1d8; border-radius: 12px; padding: 1rem; min-width: 0; }
.procurement-company.preferred { border-color: #739470; background: #f5f8ef; }
.procurement-company-choice { display: flex; align-items: flex-start; gap: .6rem; cursor: pointer; }
.procurement-company-choice input { width: 1.1rem; height: 1.1rem; margin: .15rem 0 0; accent-color: #174b3c; flex: 0 0 auto; }
.procurement-company p { line-height: 1.55; font-size: .875rem; }
.procurement-badge { display: inline-block; margin-top: .6rem; font-size: .7rem; font-weight: 700; padding: .25rem .5rem; border-radius: 5px; color: #24502f; background: #dfedcc; }
.procurement-links { display: flex; flex-wrap: wrap; gap: .6rem 1rem; }
.procurement-links a, .procurement-source a, .procurement-recipient a { color: #1d5a45; text-decoration: underline; text-underline-offset: 3px; }
.procurement-source { color: #66756b; font-size: .75rem !important; overflow-wrap: anywhere; margin-bottom: 0; }
.procurement-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1.25rem 0; }
.procurement-form label, .procurement-draft > label { display: flex; flex-direction: column; gap: .4rem; font-weight: 650; font-size: .85rem; }
.procurement-form input, .procurement-form textarea, .procurement-draft input, .procurement-draft textarea { width: 100%; box-sizing: border-box; border: 1px solid #bfcbbf; border-radius: 8px; background: #fff; padding: .7rem .8rem; font: inherit; color: #17382f; min-height: 44px; }
.procurement-form input:focus, .procurement-form textarea:focus, .procurement-draft input:focus, .procurement-draft textarea:focus { outline: 2px solid #4c7756; outline-offset: 2px; }
.procurement-form textarea, .procurement-draft textarea { resize: vertical; font-weight: 400; line-height: 1.6; }
.procurement-wide { grid-column: 1 / -1; }
.procurement-draft { margin-top: 1.3rem; border-top: 1px solid #d8e1d8; padding-top: .8rem; }
.procurement-draft > label { margin-bottom: 1rem; }
.procurement-actions { display: flex; gap: .7rem; flex-wrap: wrap; }
.procurement-recipient { display: grid; grid-template-columns: minmax(12rem, 1fr) minmax(10rem, 2fr); gap: .55rem 1rem; align-items: center; padding: .85rem 0; border-top: 1px solid #e3e9e1; }
.procurement-recipient .helper { margin: 0; overflow-wrap: anywhere; }
.procurement-content button:disabled { opacity: .5; cursor: not-allowed; }
@media (max-width: 1000px) { .procurement-companies { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .procurement-content { padding: 1rem; } .procurement-panel > summary { padding: 1rem; } .procurement-companies, .procurement-form, .procurement-recipient { grid-template-columns: minmax(0, 1fr); } .procurement-wide { grid-column: auto; } .procurement-actions { flex-direction: column; } }
@media print { .procurement-panel { display: none !important; } }
