/* Pusharoo — public header sign-in on every public page: "Log in" (popover on desktop, bottom sheet on phones) or,
   when signed in (html.px-in, from the px_si hint cookie), "My Account" with "Get started" hidden.
   Built by /assets/js/homelogin.js. Posts to the normal admin sign-in (/admin/?p=login).
   Floors: inputs >= 16px (17px here), tap targets >= 44px, safe-area insets. */
.nav .hl-btn{margin-left:6px;background:rgba(0,0,0,.05);color:var(--ink)}
.nav .hl-btn:hover{background:rgba(0,0,0,.09)}
.nav .hl-btn[aria-expanded="true"]{background:rgba(0,113,227,.12);color:var(--blue)}
.nav .hl-in{display:none}
.px-in .nav .hl-out{display:none}
.px-in .nav .hl-in{display:inline-flex}
.px-in .nav .cta,.px-in .m-cta .btn-primary{display:none!important}
@media(max-width:860px){
  .nav .hl-btn{margin-left:auto;padding:0 16px}
  .nav .hl-btn~.menu-btn{margin-left:2px}
}
@media(max-width:359px){.nav .hl-btn{padding:0 12px}}

.hl-scrim{position:fixed;inset:0;z-index:90;background:transparent}
.hl-panel{position:fixed;z-index:100;top:72px;right:24px;width:380px;max-width:calc(100vw - 32px);
  background:#fff;color:var(--ink);border-radius:20px;border:1px solid rgba(0,0,0,.06);
  box-shadow:0 2px 6px rgba(0,0,0,.05),0 24px 64px rgba(0,0,0,.18);
  font-size:16px;line-height:1.4;animation:hl-pop .18s cubic-bezier(.2,.9,.25,1)}
.hl-inner{position:relative;padding:22px 22px 18px;max-height:var(--hl-max,calc(100dvh - 88px));overflow-y:auto;overscroll-behavior:contain;border-radius:inherit}
.hl-panel[hidden],.hl-scrim[hidden]{display:none}
.hl-panel:focus{outline:none}
.hl-caret{position:absolute;top:-8px;right:var(--hl-caret,40px);width:16px;height:16px;background:#fff;
  border-left:1px solid rgba(0,0,0,.06);border-top:1px solid rgba(0,0,0,.06);transform:rotate(45deg);border-radius:4px 0 0 0}
@keyframes hl-pop{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}

.hl-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.hl-head h2{font-size:21px;letter-spacing:-.02em;line-height:1.2}
.hl-head p{color:var(--ink3);font-size:15px;margin-top:2px}
.hl-x{display:none;flex:none;width:44px;height:44px;margin:-8px -10px 0 0;border:0;border-radius:50%;background:transparent;color:var(--ink3);cursor:pointer;place-items:center}
.hl-x span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(0,0,0,.06)}
.hl-x:hover span{background:rgba(0,0,0,.1)}

.hl-field{position:relative;display:block;margin-bottom:10px}
.hl-field .hl-ic{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--ink3);pointer-events:none}
.hl-field input{width:100%;height:52px;padding:0 14px 0 44px;border:1px solid rgba(0,0,0,.14);border-radius:14px;background:#fff;
  font:400 17px/1.2 var(--font);color:var(--ink);-webkit-appearance:none;appearance:none;transition:border-color .15s,box-shadow .15s}
.hl-field input::placeholder{color:#8e8e93}
.hl-field input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,113,227,.15)}
.hl-field.pw input{padding-right:52px}
.hl-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:12px;background:transparent;color:var(--ink3);cursor:pointer;display:grid;place-items:center}
.hl-eye:hover{color:var(--ink);background:rgba(0,0,0,.04)}
.hl-eye svg{width:22px;height:22px}
.hl-eye .hl-off{display:none}.hl-eye[aria-pressed="true"] .hl-on{display:none}.hl-eye[aria-pressed="true"] .hl-off{display:block}
.hl-panel input::-ms-reveal{display:none}

.hl-submit{width:100%;min-height:50px;margin-top:4px;font-size:17px}
.hl-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;flex-wrap:wrap}
.hl-keep{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:15px;color:var(--ink3)}
.hl-keep::before{content:"\2713";color:var(--green);font-weight:700}
.hl-row a{display:inline-flex;align-items:center;min-height:44px;font-size:16px}

.hl-or{display:flex;align-items:center;gap:12px;margin:10px 0 14px;color:var(--ink3);font-size:15px}
.hl-or::before,.hl-or::after{content:"";flex:1;height:1px;background:rgba(0,0,0,.1)}

.hl-social{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:0 -4px}
.hl-sb{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;min-height:44px;padding:4px 0;border:0;background:transparent;
  font:500 13px/1.2 var(--font);color:var(--ink2);cursor:pointer;text-decoration:none!important;border-radius:14px}
.hl-sb .hl-circ{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#fff;border:1px solid rgba(0,0,0,.14);transition:transform .15s,box-shadow .15s}
.hl-sb .hl-circ svg{width:24px;height:24px}
.hl-sb.s-apple .hl-circ{background:#000;border-color:#000;color:#fff}
.hl-sb.s-apple .hl-circ svg{width:26px;height:26px}
.hl-sb:hover .hl-circ{box-shadow:0 4px 14px rgba(0,0,0,.12)}
.hl-sb:active .hl-circ{transform:scale(.95)}
.hl-sb[aria-disabled="true"]{cursor:default}
.hl-sb[aria-disabled="true"]:hover .hl-circ{box-shadow:none}
.hl-soon{position:absolute;top:0;left:50%;margin-left:14px;font-size:10px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;
  background:var(--bg2);color:var(--ink3);border:1px solid rgba(0,0,0,.08);border-radius:999px;padding:1px 6px}
.hl-note{margin-top:8px;text-align:center;font-size:14px;color:var(--ink3);min-height:1.4em}
.hl-alt{margin-top:10px;padding-top:12px;border-top:1px solid rgba(0,0,0,.08);text-align:center;font-size:16px;color:var(--ink2)}
.hl-alt a{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
.hl-panel .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Phones: bottom sheet over a dimmed page */
@media(max-width:640px){
  .hl-scrim{background:rgba(0,0,0,.36);animation:hl-fade .2s ease}
  .hl-panel{top:auto!important;left:0!important;right:0!important;bottom:0;width:auto;max-width:none;border-radius:22px 22px 0 0;border:0;
    animation:hl-up .26s cubic-bezier(.2,.9,.25,1)}
  .hl-inner{max-height:calc(100dvh - 12px - env(safe-area-inset-top));
    padding:10px max(20px,env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
  .hl-inner::before{content:"";display:block;width:36px;height:5px;border-radius:3px;background:rgba(0,0,0,.18);margin:0 auto 10px}
  .hl-caret{display:none}
  .hl-x{display:grid}
  .hl-head{margin-bottom:12px}
  .hl-sb .hl-circ{width:58px;height:58px}
  body.hl-open{overflow:hidden}
}
@media(max-width:374px){.hl-sb .hl-circ{width:52px;height:52px}.hl-sb{font-size:12.5px}}
@media(orientation:landscape) and (max-height:500px) and (max-width:640px){.hl-inner{max-height:calc(100dvh - 8px)}}
@keyframes hl-up{from{transform:translateY(100%)}to{transform:none}}
@keyframes hl-fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.hl-panel,.hl-scrim{animation:none}}
