.cfm-layer{position:fixed;inset:0;z-index:1600;background:#12382e75;display:flex;align-items:center;justify-content:center;padding:20px}.cfm-dialog{background:#fff;border-radius:18px;border:1px solid #d9e5de;box-shadow:0 24px 90px #12382e40;width:min(820px,100%);max-height:90vh;display:flex;flex-direction:column;color:#214b3a;overflow:hidden}.cfm-dialog header{padding:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:1px solid #e3ece5}.cfm-dialog h2{font-size:24px;margin:0}.cfm-dialog p{font-size:15px;color:#728578;margin:8px 0 0}.cfm-dialog button,.cfm-dialog input{font:inherit;border:1px solid #ccdfd1;border-radius:9px;padding:10px 13px;box-sizing:border-box}.cfm-dialog button{background:#edf5ef;color:#21523c;cursor:pointer;white-space:nowrap}.cfm-tools{display:flex;gap:10px;padding:18px 24px}.cfm-tools input{min-width:0;flex:1}.cfm-columns,.cfm-row{display:grid;grid-template-columns:1fr 130px 90px;align-items:center;gap:12px}.cfm-columns{padding:8px 24px;background:#f0f5f1;font-size:14px;color:#748776}.cfm-rows{min-height:0;overflow:auto;flex:1}.cfm-row{padding:13px 24px;border-bottom:1px solid #e9f0eb;font-size:18px}.cfm-row strong{font-weight:600}.cfm-row label{font-size:16px;display:flex;align-items:center;gap:7px}.cfm-row input{width:20px;height:20px;accent-color:#176d55}.cfm-row.disabled strong{color:#91a094}.cfm-row button{font-size:15px;padding:8px 12px}.cfm-dialog footer{display:flex;align-items:center;gap:15px;justify-content:space-between;padding:18px 24px;background:#f7faf7;border-top:1px solid #dfe9e1}.cfm-dialog footer span{font-size:15px;color:#647f69}.cfm-dialog [data-save]{background:#176d55;color:#fff;padding:12px 23px;font-weight:700}.cfm-dialog button:disabled{opacity:.5;cursor:default}.cfm-empty{padding:20px}@media(max-width:600px){.cfm-layer{padding:10px}.cfm-dialog header,.cfm-tools,.cfm-dialog footer{padding:15px}.cfm-tools{flex-wrap:wrap}.cfm-tools [data-search]{flex-basis:100%}.cfm-columns,.cfm-row{grid-template-columns:1fr 85px 66px;padding-left:15px;padding-right:15px;gap:7px}.cfm-row{font-size:16px}.cfm-row label{font-size:14px}.cfm-dialog footer{flex-direction:column;align-items:stretch}}
