/* 寵物護照 彈窗登入 */
.pp-modal-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.55); z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 16px; }
.pp-modal { background: #fff; width: 100%; max-width: 420px; border-radius: 16px; padding: 26px 24px 22px; position: relative; box-shadow: 0 20px 60px rgba(0,0,0,.25); max-height: 92vh; overflow-y: auto; }
.pp-modal, .pp-modal * { box-sizing: border-box; font-family: "Noto Sans TC", "Noto Sans", -apple-system, "PingFang TC", "Microsoft JhengHei", sans-serif; }

/* 專用登入頁:實色遮罩蓋滿整頁,底層完全不透出 */
.pp-modal-overlay.pp-solid { background: #f4f4f6; }
.pp-modal-close { position: absolute; top: 12px; right: 14px; border: 0; background: transparent; font-size: 1.7em; line-height: 1; color: #999; cursor: pointer; }
.pp-modal-close:hover { color: #333; }

.pp-tabs { display: flex; gap: 6px; margin-bottom: 18px; border-bottom: 1px solid #eee; }
.pp-tab { flex: 1; border: 0; background: transparent; padding: 10px 0 12px; font-size: 1.02em; color: #999; cursor: pointer; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.pp-tab.is-active { color: #ff8a3d; border-bottom-color: #ff8a3d; font-weight: 700; }

.pp-auth-form .pp-field { margin-bottom: 13px; }
.pp-auth-form label { display: block; font-weight: 600; margin-bottom: 5px; font-size: .93em; color: #444; }
.pp-auth-form input[type=text], .pp-auth-form input[type=email], .pp-auth-form input[type=password], .pp-auth-form input[type=tel], .pp-auth-form textarea, .pp-auth-form select { width: 100%; padding: 10px 12px; border: 1px solid #ddd; border-radius: 9px; font-size: .97em; }
.pp-auth-form textarea { min-height: 70px; }
.pp-hint { font-weight: 400; color: #aaa; font-size: .82em; }
.pp-req { color: #e5533d; }
.pp-checkbox { font-weight: 400 !important; display: flex; align-items: center; gap: 6px; margin: 4px 0 12px; }
.pp-checkbox input { width: auto !important; }

.pp-auth-submit { width: 100%; border: 0; border-radius: 10px; background: #ff8a3d; color: #fff; padding: 12px; font-size: 1.02em; cursor: pointer; margin-top: 4px; transition: opacity .15s; }
.pp-auth-submit:hover { opacity: .9; }
.pp-auth-submit:disabled { opacity: .55; cursor: default; }
.pp-auth-links { text-align: center; margin: 12px 0 0; font-size: .9em; }
.pp-auth-links a { color: #ff8a3d; text-decoration: none; }
.pp-forgot-note { font-size: .9em; color: #777; margin: 0 0 14px; line-height: 1.6; }

.pp-auth-msg { padding: 10px 12px; border-radius: 9px; margin-bottom: 14px; font-size: .92em; }
.pp-auth-msg.is-error { background: #fdecec; color: #b32020; }
.pp-auth-msg.is-ok { background: #e7f6ec; color: #1a7f3c; }

.pp-auth-btn { display: inline-block; border: 0; border-radius: 8px; background: #ff8a3d; color: #fff; padding: 9px 18px; cursor: pointer; text-decoration: none; font-size: .95em; }
.pp-auth-btn:hover { opacity: .9; color: #fff; }

/* 隱藏 WooCommerce 我的帳號登出前的預設登入/註冊表單(改用彈窗) */
body.woocommerce-account:not(.logged-in) .woocommerce-form-login,
body.woocommerce-account:not(.logged-in) .woocommerce-form-register,
body.woocommerce-account:not(.logged-in) .u-columns.col2-set.customer_login { display: none !important; }

/* 帳號 icon */
.pp-acc-icon-wrap { display: inline-flex; }
.pp-acc-icon { background: none; border: 0; padding: 0; margin: 0; cursor: pointer; color: inherit; display: inline-flex; line-height: 0; text-decoration: none; transition: color .15s ease; }
.pp-acc-icon svg, .pp-acc-icon img { display: block; }
.pp-acc-icon:hover { color: var(--pp-icon-hover, inherit); }
