.ppo[hidden], .ppo [hidden] { display:none !important; }
.ppo { position:fixed; inset:0; z-index:100001; font-family:inherit; color:#173a31; }
.ppo__shade { position:absolute; inset:0; background:rgba(6,43,37,.68); }
.ppo__box { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:min(440px,calc(100vw - 32px)); max-height:calc(100vh - 32px); overflow-y:auto; box-sizing:border-box; padding:32px; border-radius:18px; background:#fff; box-shadow:0 24px 72px rgba(6,43,37,.25); text-align:right; outline:none; border-top:5px solid #0d4538; }
.ppo__brand { font:bold 20px/1.2 Arial,sans-serif; direction:ltr; text-align:right; color:#173a31; letter-spacing:.04em; }
.ppo__brand b { color:#1e6a54; }
.ppo__box h2 { margin:20px 0 8px; font-size:23px; color:#0d4538; }
.ppo__intro { margin:0 0 22px; color:#5b7068; }
.ppo__box label { display:block; margin:14px 0 7px; font-weight:600; font-size:14px; }
.ppo__box input { width:100%; box-sizing:border-box; height:46px; border:1px solid #c7d9d1; border-radius:10px; padding:0 14px; color:#173a31; background:#fff; font:inherit; direction:ltr; text-align:left; }
.ppo__box input:focus { outline:2px solid #a3d1bf; border-color:#1e6a54; }
.ppo__box button[type=submit], .ppo-open { border:0; border-radius:10px; background:#0d4538; color:#fff; padding:12px 18px; font:inherit; font-weight:700; cursor:pointer; }
.ppo__box button[type=submit]:hover, .ppo-open:hover { background:#1e6a54; color:#fff; }
.ppo__box button[type=submit] { width:100%; margin:20px 0 0; min-height:46px; }
.ppo__box button:disabled { opacity:.55; cursor:wait; }
.ppo__close { position:absolute; top:14px; left:16px; border:0; background:transparent; color:#60776d; font-size:27px; cursor:pointer; }
.ppo__link { border:0; background:transparent; color:#0d5b46; padding:10px 0; margin-left:16px; font:inherit; cursor:pointer; }
.ppo__message { min-height:23px; color:#0d5b46; font-size:14px; margin:14px 0 5px; }
.ppo__message.ppo__error { color:#b4232c; }
.ppo__box small { display:block; margin-top:15px; color:#60776d; }
.ppo-is-open { overflow:hidden; }
.ppo-account, .ppo-checkout { margin:18px 0; padding:18px; border:1px solid #d5e5db; border-radius:12px; background:#f4faf6; }
.ppo-checkout .ppo-open { padding:8px 12px; margin-right:6px; }
@media(max-width:480px) { .ppo__box { padding:26px 20px; } }
