/* ── Full searchable Help & Guide modal ─────────────────────────────────── */
.ph-modal { position: fixed; inset: 0; z-index: 2147483000; display: flex; align-items: center; justify-content: center;
  background: rgba(15,23,42,.55); backdrop-filter: blur(3px); padding: 20px; }
.ph-modal.hidden { display: none; }
.ph-card { width: min(1000px, 100%); max-height: 90vh; display: flex; flex-direction: column;
  background: #fff; border-radius: 18px; box-shadow: 0 30px 80px -20px rgba(0,0,0,.5); overflow: hidden; }
.ph-head { display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 16px 20px; border-bottom: 1px solid #e2e8f0; }
.ph-head h1 { font-size: 19px; font-weight: 800; margin: 0; color: #0f172a; font-family: 'Plus Jakarta Sans', 'Inter', sans-serif; }
.ph-x { border: none; background: #f1f5f9; color: #334155; width: 34px; height: 34px; border-radius: 9px; font-size: 16px; cursor: pointer; }
.ph-x:hover { background: #e2e8f0; }
.ph-searchwrap { position: relative; padding: 12px 20px; border-bottom: 1px solid #eef2f7; }
#phSearch { width: 100%; box-sizing: border-box; padding: 11px 14px; font-size: 15px; border: 1.5px solid #cbd5e1;
  border-radius: 11px; outline: none; background: #f8fafc; color: #0f172a; }
#phSearch:focus { border-color: #0f766e; background: #fff; box-shadow: 0 0 0 3px rgba(15,118,110,.14); }
.ph-results { position: absolute; left: 20px; right: 20px; top: calc(100% - 4px); z-index: 5;
  background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; box-shadow: 0 18px 40px -12px rgba(0,0,0,.28);
  max-height: 340px; overflow-y: auto; padding: 6px; }
.ph-results.hidden { display: none; }
.ph-res { display: flex; flex-direction: column; gap: 2px; width: 100%; text-align: left; border: none; background: none;
  padding: 8px 10px; border-radius: 8px; cursor: pointer; }
.ph-res:hover { background: #f0fdfa; }
.ph-res-sec { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #0f766e; }
.ph-res-h { font-size: 14px; color: #0f172a; }
.ph-res-h mark { background: #fde68a; color: inherit; border-radius: 3px; padding: 0 1px; }
.ph-nores { padding: 12px; color: #64748b; font-size: 14px; }
.ph-wrap { display: flex; min-height: 0; flex: 1; }
.ph-nav { flex: 0 0 220px; border-right: 1px solid #eef2f7; padding: 12px 10px; overflow-y: auto; background: #fafcfe; }
.ph-link { display: block; width: 100%; text-align: left; border: none; background: none; cursor: pointer;
  padding: 9px 12px; border-radius: 9px; font-size: 13.5px; color: #334155; font-weight: 600; margin-bottom: 2px; }
.ph-link:hover { background: #eef6f5; color: #0f172a; }
.ph-link.active { background: #0f766e; color: #fff; }
.ph-body { flex: 1; min-width: 0; overflow-y: auto; padding: 22px 26px 40px; color: #1e293b; line-height: 1.6; }
.ph-sec.hidden { display: none; }
.ph-body h2 { font-size: 22px; font-weight: 800; margin: 0 0 10px; color: #0f172a; font-family: 'Plus Jakarta Sans','Inter',sans-serif; }
.ph-body h3 { font-size: 15.5px; font-weight: 700; margin: 26px 0 12px; color: #0f766e; }
.ph-body p { margin: 4px 0 10px; font-size: 14.5px; }
.ph-lede { font-size: 15.5px !important; color: #475569; margin-bottom: 10px !important; }
.ph-body a { color: #0f766e; font-weight: 600; }
.ph-body kbd { display: inline-block; background: #0f172a; color: #fff; border-radius: 5px; padding: 1px 6px;
  font-size: 12px; font-family: ui-monospace, monospace; margin: 0 1px; }
.ph-keys { width: 100%; border-collapse: collapse; margin-top: 8px; font-size: 14px; }
.ph-keys th { text-align: left; padding: 8px 10px; border-bottom: 2px solid #e2e8f0; font-size: 12.5px;
  text-transform: uppercase; letter-spacing: .03em; color: #64748b; }
.ph-keys td { padding: 9px 10px; border-bottom: 1px solid #f1f5f9; vertical-align: top; }
.ph-keys td:first-child { width: 42%; }
.ph-flash { animation: phFlash 1.5s ease; border-radius: 6px; }
@keyframes phFlash { 0%,100% { background: transparent; } 20% { background: #fef3c7; } }
@media (max-width: 640px) {
  .ph-wrap { flex-direction: column; }
  .ph-nav { flex: 0 0 auto; display: flex; gap: 6px; overflow-x: auto; border-right: none; border-bottom: 1px solid #eef2f7; }
  .ph-link { white-space: nowrap; margin-bottom: 0; }
  .ph-card { max-height: 94vh; }
}

/* ── About dropdown + Help link injected into .navlinks by nav-help.js ─── */
.ez-navdd{position:relative;display:inline-flex}
.ez-navdd-btn{background:none;border:none;font:inherit;font-size:14.5px;font-weight:500;color:var(--mut,#64748b);cursor:pointer;display:inline-flex;align-items:center;gap:5px;padding:0}
.ez-navdd-btn:hover{color:var(--ink-strong,#0f172a)}
.ez-navdd-caret{font-size:11px;opacity:.7}
.ez-navdd-menu{position:absolute;top:calc(100% + 12px);left:-14px;min-width:180px;background:#fff;border:1px solid var(--line,#e2e8f0);border-radius:13px;box-shadow:0 24px 56px -18px rgba(16,40,34,.42);padding:6px;z-index:1000;display:flex;flex-direction:column}
.ez-navdd-menu[hidden]{display:none}
.ez-navdd-menu a{padding:9px 12px;border-radius:8px;font-size:14px;font-weight:600;color:var(--ink-strong,#0f172a);text-decoration:none}
.ez-navdd-menu a:hover{background:var(--em-soft,#ecfdf5);color:var(--em-dk,#047857)}
.ez-navhelp{cursor:pointer}

/* ── Signed-in account badge (replaces "Sign In") ─────────────────────── */
.ez-acctwrap{position:relative;display:inline-flex}
.ez-acctbtn{display:inline-flex;align-items:center;gap:7px;font-weight:600}
.ez-acctname{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ez-acctmenu{position:absolute;top:calc(100% + 8px);right:0;min-width:214px;background:#fff;border:1px solid var(--line,#e2e8f0);border-radius:13px;box-shadow:0 24px 56px -18px rgba(16,40,34,.42);padding:6px;z-index:1000;display:flex;flex-direction:column}
.ez-acctmenu[hidden]{display:none}
.ez-acctmenu a,.ez-acctmenu button{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:none;border:none;padding:10px 12px;border-radius:9px;font-size:14px;font-weight:600;color:var(--ink-strong,#0f172a);cursor:pointer;font-family:inherit;text-decoration:none}
.ez-acctmenu a:hover,.ez-acctmenu button:hover{background:var(--em-soft,#ecfdf5);color:var(--em-dk,#047857)}
.ez-mailrow{font-size:12px;font-weight:500;color:var(--mut,#64748b);padding:6px 12px 8px;border-bottom:1px solid var(--line,#e2e8f0);margin-bottom:4px}
.ez-signout{color:#dc2626 !important}

/* ── Sign-in modal ────────────────────────────────────────────────────── */
.ezauth-modal{position:fixed;inset:0;z-index:2147483200;display:flex;align-items:center;justify-content:center;background:rgba(15,23,42,.5);backdrop-filter:blur(3px);padding:20px}
.ezauth-modal.hidden{display:none}
.ezauth-card{position:relative;width:min(430px,100%);background:#fff;border-radius:20px;box-shadow:0 40px 90px -24px rgba(8,15,30,.5);padding:30px 28px 26px;text-align:center;animation:ezauthPop .22s cubic-bezier(.22,.9,.32,1.2)}
@keyframes ezauthPop{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
.ezauth-x{position:absolute;top:14px;right:14px;width:32px;height:32px;border:none;border-radius:50%;background:#f1f5f9;color:#334155;font-size:15px;cursor:pointer}
.ezauth-x:hover{background:#e2e8f0}
.ezauth-logo{width:56px;height:56px;margin:0 auto 16px;border-radius:15px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-weight:800;font-size:19px;display:grid;place-items:center;box-shadow:0 14px 30px -12px rgba(16,185,129,.7)}
.ezauth-card h3{margin:0 0 6px;font-size:22px;font-weight:800;color:#0f172a;font-family:'Plus Jakarta Sans','Inter',sans-serif}
.ezauth-sub{margin:0 0 18px;font-size:14px;color:#64748b;line-height:1.5}
.ezauth-field{display:flex;align-items:center;gap:10px;border:1px solid #cbd5e1;border-radius:12px;padding:0 14px;margin-bottom:10px;background:#fff}
.ezauth-field:focus-within{border-color:#0f766e;box-shadow:0 0 0 3px rgba(15,118,110,.14)}
.ezauth-ic{font-size:15px;opacity:.7}
.ezauth-field input{flex:1;border:none;outline:none;padding:14px 0;font-size:15px;background:none;color:#0f172a}
.ezauth-err{color:#dc2626;font-size:13px;min-height:18px;margin:2px 0 8px;text-align:left}
.ezauth-primary{width:100%;padding:14px;border:none;border-radius:12px;background:linear-gradient(180deg,#10b981,#059669);color:#fff;font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 12px 26px -12px rgba(16,185,129,.7)}
.ezauth-primary:hover{filter:brightness(1.04)}
.ezauth-primary:disabled{opacity:.7;cursor:default}
.ezauth-divider{display:flex;align-items:center;gap:12px;margin:16px 0 12px;color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.08em}
.ezauth-divider::before,.ezauth-divider::after{content:"";flex:1;height:1px;background:#e2e8f0}
.ezauth-secondary{width:100%;padding:13px;border:1.5px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f766e;font-size:15px;font-weight:700;cursor:pointer}
.ezauth-secondary:hover{background:#f0fdfa;border-color:#0f766e}
.ezauth-secondary:disabled{opacity:.7;cursor:default}

/* ── Contact us modal form ── */
.ezc-input{width:100%;box-sizing:border-box;padding:12px 14px;margin-bottom:10px;font-size:15px;font-family:inherit;border:1px solid #cbd5e1;border-radius:11px;background:#fff;color:#0f172a;outline:none;text-align:left;transition:border-color .14s,box-shadow .14s}
.ezc-input:focus{border-color:#0f766e;box-shadow:0 0 0 3px rgba(15,118,110,.14)}
.ezc-textarea{resize:vertical;min-height:100px;line-height:1.5}
.ezc-select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2364748b' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:34px;cursor:pointer}
.ez-acctmenu .ez-login{color:var(--em-dk,#047857)}
