/* Site-wide premium modal system */
:root{--site-modal-green:#078957;--site-modal-deep:#075c3e;--site-modal-ink:#123d30;--site-modal-muted:#71877d}
.site-modal-overlay{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:18px;background:rgba(5,31,23,.48);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}
.site-modal-overlay.is-open{opacity:1;visibility:visible}
.site-modal-dialog{position:relative;width:min(100%,440px);max-height:min(88vh,760px);overflow:auto;border:1px solid rgba(255,255,255,.9);border-radius:28px;background:linear-gradient(160deg,#fff 0%,#f7fcf9 100%);box-shadow:0 28px 90px rgba(0,35,23,.28),0 5px 20px rgba(0,90,57,.1);padding:32px 28px 26px;text-align:center;transform:translateY(18px) scale(.97);transition:transform .24s cubic-bezier(.2,.8,.2,1);color:var(--site-modal-ink);font-family:inherit}
.site-modal-overlay.is-open .site-modal-dialog{transform:translateY(0) scale(1)}
.site-modal-orb{width:66px;height:66px;margin:0 auto 17px;border-radius:22px;display:grid;place-items:center;color:var(--site-modal-green);background:linear-gradient(145deg,#e6f8ee,#d3f1e1);box-shadow:inset 0 0 0 1px #c8ead8;font-size:29px}
.site-modal-title{font-size:22px;font-weight:850;line-height:1.5;margin:0 0 9px;color:#103d2d}
.site-modal-message{font-size:15px;line-height:2;color:#526e61;margin:0;overflow-wrap:anywhere;white-space:pre-wrap}
.site-modal-actions{display:flex;gap:10px;justify-content:center;margin-top:25px}
.site-modal-btn{appearance:none;border:0;border-radius:14px;min-width:112px;padding:12px 22px;font:inherit;font-weight:750;cursor:pointer;transition:transform .18s,box-shadow .18s,background .18s}
.site-modal-btn:hover{transform:translateY(-2px)}.site-modal-btn-primary{color:white;background:linear-gradient(135deg,#13a36a,#067a4d);box-shadow:0 8px 18px rgba(7,137,87,.23)}.site-modal-btn-secondary{color:#426354;background:#edf5f0;border:1px solid #dcebe2}
.site-modal-close{position:absolute;top:13px;left:13px;width:36px;height:36px;border:0;border-radius:12px;background:#eef6f1;color:#557466;font-size:23px;cursor:pointer}
/* Make the existing admin form modals match the same visual language */
.admin-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:18px;background:rgba(5,31,23,.48)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.admin-modal-card{width:min(100%,620px)!important;max-height:90vh;overflow:auto;border:1px solid #e0f0e6!important;border-radius:26px!important;background:linear-gradient(160deg,#fff,#f7fcf9)!important;box-shadow:0 28px 80px rgba(0,35,23,.25)!important;padding:30px!important;color:#123d30}
.admin-modal-card h2{font-size:23px!important;font-weight:850!important;color:#10432f!important;margin:0 0 22px!important;padding-bottom:15px;border-bottom:1px solid #e5f0e9}
.admin-modal-card label{display:block;margin:14px 0;color:#426354;font-weight:700;font-size:14px}
.admin-modal-card input,.admin-modal-card textarea,.admin-modal-card select{width:100%;box-sizing:border-box;margin-top:8px;border:1px solid #dcebe2!important;border-radius:13px!important;background:#fbfefc!important;padding:12px 14px!important;outline:none;font:inherit;color:#183d30;transition:border-color .18s,box-shadow .18s}
.admin-modal-card input:focus,.admin-modal-card textarea:focus,.admin-modal-card select:focus{border-color:#16a36b!important;box-shadow:0 0 0 4px rgba(22,163,107,.11)}
.admin-modal-card textarea{min-height:110px;resize:vertical}.admin-modal-card .modal-actions{display:flex;gap:10px;justify-content:flex-start;margin-top:22px}.admin-modal-card .modal-actions button{border-radius:13px!important;padding:11px 20px!important;font-weight:750}
.admin-modal-card .modal-close{position:sticky;float:left;top:0;width:36px;height:36px;border:0;border-radius:12px;background:#edf6f0;color:#4c6a5b;font-size:23px;cursor:pointer}
@media(max-width:520px){.site-modal-overlay{padding:14px}.site-modal-dialog{padding:28px 20px 22px;border-radius:23px}.site-modal-title{font-size:20px}.site-modal-message{font-size:14px}.site-modal-actions{flex-direction:column-reverse}.site-modal-btn{width:100%}.admin-modal-card{padding:22px!important;border-radius:22px!important}.admin-modal-card .modal-actions{flex-direction:column-reverse}.admin-modal-card .modal-actions button{width:100%}}
@media(prefers-reduced-motion:reduce){.site-modal-overlay,.site-modal-dialog,.site-modal-btn{transition:none}}

/* Responsive modal refinement: wider admin forms, subtle scrollbar, stable actions */
.admin-modal{padding:clamp(10px,3vw,28px)!important;overflow-y:auto!important;align-items:center!important}
.admin-modal-card{width:min(720px,calc(100vw - 32px))!important;max-height:min(88dvh,900px)!important;overflow:auto!important;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b8d8c5 transparent;padding:clamp(20px,3vw,34px)!important}
.admin-modal-card::-webkit-scrollbar,.site-modal-dialog::-webkit-scrollbar{width:7px}
.admin-modal-card::-webkit-scrollbar-track,.site-modal-dialog::-webkit-scrollbar-track{background:transparent}
.admin-modal-card::-webkit-scrollbar-thumb,.site-modal-dialog::-webkit-scrollbar-thumb{background:#b8d8c5;border-radius:20px;border:2px solid transparent;background-clip:padding-box}
.admin-modal-card form{min-width:0}.admin-modal-card input,.admin-modal-card textarea,.admin-modal-card select{min-width:0;max-width:100%}
.admin-modal-card .modal-actions{position:sticky;bottom:-1px;background:linear-gradient(180deg,rgba(255,255,255,.88),#fff 30%);padding-top:14px;padding-bottom:2px;z-index:2}
.site-modal-dialog{scrollbar-width:thin;scrollbar-color:#c4dfcf transparent;overscroll-behavior:contain}
@media(max-width:600px){.admin-modal{padding:10px!important;align-items:end!important}.admin-modal-card{width:100%!important;max-height:91dvh!important;border-radius:24px 24px 18px 18px!important;padding:20px 17px max(18px,env(safe-area-inset-bottom))!important}.admin-modal-card h2{font-size:20px!important}.admin-modal-card label{margin:11px 0;font-size:13px}.admin-modal-card .modal-actions{flex-direction:column-reverse;gap:8px}.admin-modal-card .modal-actions button{width:100%;min-height:44px}.site-modal-overlay{padding:12px}.site-modal-dialog{width:min(100%,440px);max-height:calc(100dvh - 24px);overflow:auto;padding:27px 20px 22px;border-radius:24px}}
