/* Public module catalogues and business workflows */
.module-page{color:var(--coffee-900,#1b0f0a);line-height:1.9}
.module-page h1{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.6;margin:0 0 .8rem}
.module-page h2{font-size:1.3rem;margin:.6rem 0}
.module-page h3{font-size:1.1rem;margin:0 0 .7rem}
.module-hero{padding:clamp(1.2rem,4vw,3rem);border-radius:1rem;background:linear-gradient(120deg,#f7efe5,#fff8eb);border:1px solid #e8d5bc;margin-bottom:2rem}
.module-eyebrow{color:#83522c;font-size:.85rem;font-weight:600}
.module-actions,.module-inline{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;margin:1rem 0}
.module-search{display:flex;align-items:center;gap:.8rem;margin:1.5rem 0;flex-wrap:wrap}
.module-search input{flex:1;min-width:180px}
.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1.2rem}
.module-card,.module-record{background:#fff;border:1px solid #e6d7c8;border-radius:1rem;padding:1.5rem;box-shadow:0 4px 15px #40231108}
.module-card{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem}
.module-card .module-link{margin-top:auto;padding-top:1rem}
.module-record{margin:.5rem 0;width:100%;min-width:0}
.module-link{color:#8a451b;font-weight:650}
.module-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.module-empty{padding:3rem 1rem;text-align:center;border:1px dashed #c7ae92;border-radius:1rem;background:#fffbf6}
.module-detail-copy{white-space:pre-line;margin:1rem 0;max-width:850px}
.module-tabs{display:flex;gap:.4rem;overflow:auto;margin:1.5rem 0;border-bottom:1px solid #dfcdb8}
.module-tabs button{white-space:nowrap;border:0;background:transparent;padding:.8rem 1rem;font:inherit;cursor:pointer;border-bottom:3px solid transparent}
.module-tabs button.active{border-color:#bd7427;background:#fff4df}
.module-facts{display:grid;grid-template-columns:minmax(100px,160px) minmax(0,1fr);gap:.3rem 1rem;margin:.6rem 0;max-width:950px}
.module-facts dt{color:#81634d;font-size:.85rem}
.module-facts dd{margin:0;overflow-wrap:anywhere;white-space:pre-line}
.module-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:1000px;margin:1.3rem 0}
.module-form .field{display:flex;flex-direction:column;gap:.3rem;min-width:0}
.module-form label{font-weight:600}.module-form small{color:#7b6656;font-size:.8rem}
.module-form input:not([type=checkbox]),.module-form textarea,.module-form select,.module-search input{border:1px solid #cdbba6;border-radius:.65rem;padding:.65rem .8rem;background:#fff;font:inherit;max-width:100%;width:100%;box-sizing:border-box}
.module-form input[type=checkbox]{align-self:flex-start;width:22px;height:22px;accent-color:#875123}
.module-form input:focus,.module-form textarea:focus,.module-form select:focus,.module-search input:focus{outline:2px solid #e9ab54;outline-offset:2px}
.module-form>.module-actions,.module-form>.api-error-alert{grid-column:1/-1}
.module-inline input{flex:1;min-width:90px}
.module-success{padding:.8rem 1rem;border-radius:.7rem;background:#edf7e8;color:#2b5f23}
.module-page .btn-coffee.secondary{background:#f6ede2;color:#5e381e;border:1px solid #d6c0a7}
@media(max-width:640px){.module-form{grid-template-columns:1fr}.module-card,.module-record{padding:1rem}.module-facts{grid-template-columns:110px minmax(0,1fr)}.module-actions .btn-coffee{font-size:.85rem}.module-hero .module-actions{align-items:stretch;flex-direction:column}}
