/* ═══════════════════════════════════════════════════════
   SZUKAM ROLNIKA — Modale, formularze auth, dropdowny
   ═══════════════════════════════════════════════════════ */

/* ── MODAL OVERLAY ──────────────────────────────────── */
.modal-overlay{display:none;position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:16px}
.modal-overlay.active{display:flex}
.modal{background:#fff;border-radius:20px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.25);animation:modalIn .25s ease both}
@keyframes modalIn{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}
.modal__head{padding:28px 32px 0;display:flex;align-items:flex-start;justify-content:space-between}
.modal__title{font-family:'Playfair Display',serif;font-size:26px;font-weight:600;color:#1a2e1a;margin:0 0 4px}
.modal__sub{font-size:13px;color:#888;margin:0;line-height:1.5}
.modal__close{background:none;border:none;cursor:pointer;padding:4px;color:#aaa;transition:color .2s;flex-shrink:0;margin-left:12px}
.modal__close:hover{color:#333}
.modal__body{padding:24px 32px 32px}
.modal__alert{display:none;padding:12px 16px;border-radius:10px;font-size:13px;margin-bottom:20px;line-height:1.5}
.modal__alert--error{background:#fff0f0;border:1px solid #fcc;color:#c00}
.modal__alert--success{background:#f0fff4;border:1px solid #9de;color:#166534}
.modal__alert.show{display:block}

/* ── POLA FORMULARZY ────────────────────────────────── */
.mform-group{margin-bottom:16px}
.mform-group label{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6b7c6b;margin-bottom:6px}
.mform-group input,.mform-group select{width:100%;padding:11px 14px;border:1.5px solid #e0e8e0;border-radius:10px;font-family:'Lato',sans-serif;font-size:14px;color:#1a2e1a;background:#f9fbf9;outline:none;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}
.mform-group select{padding:11px 36px 11px 14px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%234a7c32' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
.mform-group input:focus,.mform-group select:focus{border-color:#4a7c32;box-shadow:0 0 0 3px rgba(74,124,50,.12);background:#fff}
.mform-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mform-row--desktop{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* ── CHECKBOX REGULAMINU ────────────────────────────── */
.mform-check{margin:12px 0 20px}
.mform-check__label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;user-select:none}
.mform-check__label input[type="checkbox"]{display:none}
.mform-check__box{width:18px;height:18px;min-width:18px;margin-top:1px;border:1.5px solid #d0dece;border-radius:5px;display:flex;align-items:center;justify-content:center;background:#fff;transition:all .15s;color:transparent;flex-shrink:0}
.mform-check__label input:checked ~ .mform-check__box{background:#4a7c32;border-color:#4a7c32;color:#fff}
.mform-check__label:hover .mform-check__box{border-color:#4a7c32}
.mform-check__text{font-size:12px;color:#666;line-height:1.6}
.mform-check a{color:#4a7c32;text-decoration:none}
.mform-check a:hover{text-decoration:underline}

/* ── PRZYCISKI I INNE ELEMENTY ──────────────────────── */
.mform-submit{width:100%;padding:13px;background:linear-gradient(135deg,#4a7c32,#2d5a1e);border:none;border-radius:10px;color:#fff;font-family:'Lato',sans-serif;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 4px 16px rgba(74,124,50,.3);transition:all .25s}
.mform-submit:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(74,124,50,.4)}
.mform-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}
.mform-switch{text-align:center;margin-top:20px;font-size:13px;color:#888}
.mform-switch a{color:#4a7c32;font-weight:700;cursor:pointer;text-decoration:none}
.mform-switch a:hover{text-decoration:underline}
.mform-divider{display:flex;align-items:center;gap:12px;margin:20px 0}
.mform-divider::before,.mform-divider::after{content:'';flex:1;height:1px;background:#e8ede8}
.mform-divider span{font-size:11px;color:#bbb;letter-spacing:.08em}

/* ── TOAST ──────────────────────────────────────────── */
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(80px);background:#1a2e1a;color:#fff;padding:14px 24px;border-radius:100px;font-size:14px;z-index:2000;box-shadow:0 8px 32px rgba(0,0,0,.2);transition:transform .35s cubic-bezier(.34,1.56,.64,1);white-space:nowrap}
.toast.show{transform:translateX(-50%) translateY(0)}
.toast.toast--error{background:#c0392b}

/* ── MULTISELECT DROPDOWN (preferencje) ─────────────── */
.mform-multiselect{position:relative}
.mform-multiselect__trigger{width:100%;padding:11px 14px;border:1.5px solid #e0e8e0;border-radius:10px;font-family:'Lato',sans-serif;font-size:14px;color:#6b7c6b;background:#f9fbf9;outline:none;cursor:pointer;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}
.mform-multiselect__trigger:hover,.mform-multiselect--open .mform-multiselect__trigger{border-color:#4a7c32;background:#fff}
.mform-multiselect--open .mform-multiselect__trigger{box-shadow:0 0 0 3px rgba(74,124,50,.12);border-radius:10px 10px 0 0}
.mform-multiselect__trigger svg{flex-shrink:0;color:#4a7c32;transition:transform .2s}
.mform-multiselect--open .mform-multiselect__trigger svg{transform:rotate(180deg)}
.mform-multiselect__trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.mform-multiselect__trigger span.has-value{color:#1a2e1a}
.mform-multiselect__menu{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border:1.5px solid #4a7c32;border-top:none;border-radius:0 0 10px 10px;box-shadow:0 8px 24px rgba(0,0,0,.1);z-index:200;max-height:220px;overflow-y:auto}
.mform-multiselect--open .mform-multiselect__menu{display:block}
.mform-multiselect__item{display:flex;align-items:center;flex-direction:row;gap:10px;padding:10px 14px;cursor:pointer;font-size:14px;color:#1a2e1a;transition:background .15s;user-select:none}
.mform-multiselect__item:hover{background:#f0f7ec}
.mform-multiselect__item input[type="checkbox"]{display:none}
.mform-multiselect__check{width:18px;height:18px;min-width:18px;float:left;margin-right:10px;border:1.5px solid #d0dece;border-radius:5px;display:flex;align-items:center;justify-content:center;background:#fff;transition:all .15s;color:transparent;flex-shrink:0}
.mform-multiselect__item input:checked ~ .mform-multiselect__check{background:#4a7c32;border-color:#4a7c32;color:#fff}
.mform-multiselect__text{display:block;margin-left:28px;flex:1}
.mform-multiselect__item:last-child{border-radius:0 0 8px 8px}

/* ── SINGLE SELECT (Jestem) ─────────────────────────── */
.mform-singleselect__item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;font-size:14px;color:#1a2e1a;transition:background .15s;user-select:none}
.mform-singleselect__item:hover{background:#f0f7ec}
.mform-singleselect__item.active{background:#f0f7ec;font-weight:700;color:#4a7c32}
.mform-singleselect__item:last-child{border-radius:0 0 8px 8px}
.mform-singleselect__dot{width:16px;height:16px;min-width:16px;border:1.5px solid #d0dece;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}
.mform-singleselect__item.active .mform-singleselect__dot{border-color:#4a7c32;background:#4a7c32;box-shadow:inset 0 0 0 3px #fff}

/* ── AIR DATEPICKER — motyw zielony ─────────────────── */
.air-datepicker{--adp-font-family:'Lato',sans-serif;--adp-font-size:14px;--adp-width:260px;--adp-z-index:9999;--adp-padding:8px;--adp-grid-areas:"nav" "body" "timepicker" "buttons";--adp-transition-duration:.2s;--adp-color:#1a2e1a;--adp-color-secondary:#6b7c6b;--adp-border-color:#e0e8e0;--adp-border-color-inner:#e0e8e0;--adp-border-radius:14px;--adp-border-radius-inner:10px;--adp-background-color:#fff;--adp-background-color-hover:#f0f7ec;--adp-background-color-active:#4a7c32;--adp-background-color-in-range:rgba(74,124,50,.12);--adp-background-color-in-range-focused:rgba(74,124,50,.2);--adp-background-color-selected-other-month-focused:#4a7c32;--adp-background-color-selected-other-month:#3d6929;--adp-color-other-month:#b0c4b0;--adp-color-other-month-hover:#4a7c32;--adp-color-disabled:#ccc;--adp-color-disabled-in-range:#aaa;--adp-color-selected:#fff;--adp-day-name-color:#4a7c32;--adp-day-name-color-hover:#4a7c32;--adp-nav-arrow-color:#4a7c32;--adp-nav-color-secondary:#6b7c6b;--adp-cell-border-radius:8px;--adp-cell-width:34px;--adp-cell-height:34px;--adp-btn-color:#4a7c32;--adp-btn-color-hover:#2d5a1e;box-shadow:0 8px 32px rgba(0,0,0,.12);border:1.5px solid #e0e8e0}
.air-datepicker-nav--title,.air-datepicker-nav--title i{color:#1a2e1a;font-weight:700}
.air-datepicker-nav--title:hover,.air-datepicker-nav--title i:hover{color:#4a7c32;background:var(--adp-background-color-hover)}
.air-datepicker--pointer:after{border-bottom-color:#e0e8e0}
.-selected-.-focus->.air-datepicker-cell{background:#2d5a1e}
.air-datepicker-cell.-current-{color:#4a7c32;font-weight:700}
.air-datepicker-cell.-current-.-selected-{color:#fff}
#reg-birth{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234a7c32' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='4' rx='2' ry='2'/%3E%3Cline x1='16' x2='16' y1='2' y2='6'/%3E%3Cline x1='8' x2='8' y1='2' y2='6'/%3E%3Cline x1='3' x2='21' y1='10' y2='10'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:38px}

/* ── RESPONSIVE ─────────────────────────────────────── */
@media(max-width:500px){
  .modal__body,.modal__head{padding-left:20px;padding-right:20px}
  .mform-row{grid-template-columns:1fr}
  .mform-row--desktop{grid-template-columns:1fr}
}
