/* PP legal modal (10-13 Oliver): Terms / Privacy in the page - the pay sheet's look: a bottom sheet on a phone, a centred
   dialog on desktop. Above everything, the pay sheet included. */
.pp-legal[hidden]{display:none!important}
.pp-legal__back{position:fixed;inset:0;z-index:100000;background:rgb(20 20 20 / .38)}
.pp-legal__dlg{position:fixed;left:0;right:0;bottom:0;z-index:100001;display:flex;flex-direction:column;max-height:88vh;max-height:88dvh;background:#fff;color:#141414;border-radius:18px 18px 0 0;box-shadow:0 -12px 40px rgb(0 0 0 / .18);padding-bottom:env(safe-area-inset-bottom);animation:pp-legal-up .28s cubic-bezier(.2,.8,.2,1);outline:none}
.pp-legal__dlg::before{content:"";display:block;flex:none;width:40px;height:4px;margin:8px auto 0;border-radius:2px;background:#d9d6cf}
.pp-legal__head{display:flex;align-items:center;gap:12px;flex:none;padding:10px 12px 10px 20px;border-bottom:1px solid #ece9e2}
.pp-legal__title{flex:1;margin:0;font-size:18px;font-weight:700;line-height:1.3;color:#141414}
.pp-legal__x{flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#141414;cursor:pointer}
.pp-legal__x:hover{background:#f3f1ec}
.pp-legal__body{flex:1 1 auto;min-height:120px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:16px 20px 20px;font-size:15px;line-height:1.6;color:#2b2b2b}
.pp-legal__body:focus{outline:none}
.pp-legal__body h1,.pp-legal__body h2,.pp-legal__body h3{margin:1.2em 0 .4em;font-size:17px;line-height:1.35;color:#141414}
.pp-legal__body h1:first-child,.pp-legal__body h2:first-child,.pp-legal__body h3:first-child{margin-top:0}
.pp-legal__body p,.pp-legal__body ul,.pp-legal__body ol{margin:0 0 .9em}
.pp-legal__body ul,.pp-legal__body ol{padding-left:1.3em}
.pp-legal__body a{color:#1e4fd8;text-decoration:underline}
.pp-legal__body img{max-width:100%;height:auto}
.pp-legal__body table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}
.pp-legal__msg{color:#5b5b5b}
.pp-legal__foot{flex:none;padding:12px 20px 14px;border-top:1px solid #ece9e2}
.pp-legal__done{display:block;width:100%;min-height:48px;border:0;border-radius:12px;background:#141414;color:#fff;font:inherit;font-size:16px;font-weight:600;cursor:pointer}
.pp-legal__done:focus-visible,.pp-legal__x:focus-visible{outline:2px solid #1e4fd8;outline-offset:2px}
html.pp-legal-open,html.pp-legal-open body{overflow:hidden!important}
@media (min-width:768px){
  .pp-legal__dlg{left:50%;right:auto;top:50%;bottom:auto;width:min(720px,92vw);max-height:85vh;border-radius:18px;transform:translate(-50%,-50%);box-shadow:0 20px 60px rgb(0 0 0 / .22);animation:pp-legal-fade .2s ease;padding-bottom:0}
  .pp-legal__dlg::before{display:none}
  .pp-legal__head{padding:14px 14px 14px 24px}
  .pp-legal__body{padding:20px 24px 24px}
  .pp-legal__foot{display:flex;justify-content:flex-end;padding:12px 24px 16px}
  .pp-legal__done{width:auto;min-width:120px;padding:0 24px}
}
@keyframes pp-legal-up{from{transform:translateY(100%)}to{transform:translateY(0)}}
@keyframes pp-legal-fade{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.pp-legal__dlg{animation:none}}
