/* MAJLIS shared UI  -  toast notifications + modal dialog. Theme via the
   page's own --wine / --ivory / --line variables (all pages define them). */
.majlis-toast-wrap{position:fixed;z-index:9000;left:50%;bottom:26px;transform:translateX(-50%);display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}
.majlis-toast{pointer-events:auto;background:var(--wine,#540d00);color:var(--ivory,#fff8ea);padding:13px 18px;font-size:12px;letter-spacing:.04em;box-shadow:0 14px 34px rgba(36,26,20,.28);max-width:min(90vw,420px);opacity:0;transform:translateY(10px);transition:opacity .22s ease,transform .22s ease;border-radius:4px}
.majlis-toast.show{opacity:1;transform:translateY(0)}
.majlis-toast.err{background:#8b2418}

.majlis-modal{position:fixed;z-index:9100;inset:0;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(36,26,20,.55);backdrop-filter:blur(2px)}
.majlis-modal.open{display:flex}
.majlis-modal-card{background:var(--ivory,#fff8ea);color:var(--ink,#241a14);width:min(560px,100%);max-height:90vh;overflow:auto;border:1px solid var(--line,rgba(84,13,0,.18));box-shadow:0 30px 80px rgba(36,26,20,.4);padding:30px clamp(22px,4vw,40px)}
.majlis-modal-card h3{font-family:Fraunces,serif;color:var(--wine,#540d00);font-weight:400;font-size:30px;letter-spacing:-.03em;margin:0 0 6px}
.majlis-modal-card p.sub{margin:0 0 22px;font-size:13px;line-height:1.5;color:rgba(36,26,20,.66)}
.majlis-field{display:block;margin-bottom:14px}
.majlis-field[hidden]{display:none}
.majlis-field span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:var(--wine,#540d00);font-weight:700;margin-bottom:7px}
.majlis-field input,.majlis-field select,.majlis-field textarea{width:100%;border:1px solid var(--line,rgba(84,13,0,.25));background:#fff;padding:12px 13px;color:var(--ink,#241a14);font:inherit}
.majlis-field input:focus,.majlis-field select:focus,.majlis-field textarea:focus{outline:2px solid var(--cyan,#68d3e0);outline-offset:1px}
.majlis-modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.majlis-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid var(--wine,#540d00);background:#fff;color:var(--wine,#540d00);text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:700;cursor:pointer;font-family:inherit}
.majlis-btn.fill{background:var(--wine,#540d00);color:var(--ivory,#fff8ea)}
.majlis-btn:disabled{opacity:.55;cursor:default}
.majlis-modal-close{float:right;border:0;background:none;color:var(--wine,#540d00);font-size:22px;line-height:1;cursor:pointer;margin:-8px -8px 0 0}
.majlis-modal-switch{margin-top:18px;font-size:12px;color:rgba(36,26,20,.66)}
.majlis-modal-switch button{border:0;background:none;color:var(--wine,#540d00);font:inherit;text-decoration:underline;cursor:pointer;padding:0}
.majlis-error{color:#8b2418;font-size:12px;margin:0 0 14px;min-height:1px}

/* Supabase authentication options */
.majlis-auth-options{display:grid;gap:10px;margin-top:12px}
.majlis-auth-options .majlis-btn{width:100%}
.majlis-field small{display:block;margin-top:6px;color:rgba(36,26,20,.62);font-size:11px;line-height:1.4;letter-spacing:0;text-transform:none;font-weight:400}
.majlis-pending-note{border:1px solid var(--line,rgba(84,13,0,.18));background:rgba(84,13,0,.045);padding:14px 16px;margin:0 0 24px;color:var(--wine,#540d00);font-size:13px;line-height:1.5}
.majlis-pending-note b{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:10px;margin-bottom:5px}
@media(max-width:700px){.majlis-modal{align-items:flex-start;overflow:auto}.majlis-modal-card{margin-top:22px;margin-bottom:22px}}
