.ypmc-customer-area { max-width: 900px; }
.ypmc-conversation-list { list-style: none; margin: 1em 0 2em; padding: 0; }
.ypmc-conversation-list li { border-bottom: 1px solid #ddd; margin: 0; }
.ypmc-conversation-list a { color: inherit; display: grid; gap: 6px; padding: 14px 6px; text-decoration: none; }
.ypmc-conversation-list a:hover { background: #f7f7f7; }
.ypmc-conversation-list small { color: #666; }
.ypmc-status { border-radius: 99px; display: inline-block; font-size: .8em; font-weight: 600; padding: 2px 8px; width: fit-content; }
.ypmc-status--pending { background: #fff3cd; color: #6e4d00; }.ypmc-status--replied { background: #d9edf7; color: #075a78; }.ypmc-status--closed { background: #e5e7eb; color: #374151; }
.ypmc-thread { margin: 1.5em 0; }.ypmc-message { border: 1px solid #ddd; border-radius: 6px; margin: 1em 0; padding: 1em; }.ypmc-message--admin { border-left: 4px solid #2271b1; }.ypmc-message--customer { border-left: 4px solid #72aee6; }
.ypmc-message header { display: flex; justify-content: space-between; gap: 12px; margin-bottom: .75em; }.ypmc-message time { color: #666; font-size: .85em; }.ypmc-attachments { margin: .8em 0 0; }
.ypmc-form { margin: 1em 0 2em; }.ypmc-form label { display: block; font-weight: 600; margin: 1em 0 .35em; }.ypmc-form input[type=text], .ypmc-form select, .ypmc-form textarea { box-sizing: border-box; max-width: 100%; width: 100%; }.ypmc-form textarea { min-height: 130px; }.ypmc-form .description { color: #666; font-size: .9em; }.ypmc-closed { background: #f1f1f1; padding: 1em; }
.ypmc-email-preference { align-items: center; background: #f7f7f7; display: flex; flex-wrap: wrap; gap: .75em; margin: 1em 0 2em; padding: 1em; }
[data-ypmc-order-field][hidden] { display: none !important; }
.ypmc-footer-contact { box-sizing: border-box; clear: both; font-size: .95em; padding: 18px 16px; text-align: center; width: 100%; }
.ypmc-contact-link { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.ypmc-contact-link:hover, .ypmc-contact-link:focus { text-decoration-thickness: 2px; }
.ypmc-guest-access { background: #fff; border: 1px solid #dcdcde; border-radius: 12px; box-shadow: 0 12px 32px rgba(0, 0, 0, .08); margin: 24px auto; max-width: 980px; overflow: hidden; }
.ypmc-guest-access__header { background: linear-gradient(135deg, #0b416d, #2271b1); color: #fff; padding: 30px clamp(20px, 5vw, 48px); text-align: center; }
.ypmc-guest-access__header h2 { color: #fff; font-size: clamp(24px, 4vw, 34px); margin: 8px 0 10px; }
.ypmc-guest-access__header p { font-size: 16px; margin: 0 auto; max-width: 700px; opacity: .95; }
.ypmc-guest-access__eyebrow, .ypmc-account-card__badge { display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.ypmc-guest-access__eyebrow { background: rgba(255, 255, 255, .16); border: 1px solid rgba(255, 255, 255, .28); border-radius: 99px; padding: 5px 10px; }
.ypmc-guest-access__grid { display: grid; gap: 0; grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr); }
.ypmc-account-card { box-sizing: border-box; padding: clamp(22px, 4vw, 38px); }
.ypmc-account-card--register { border-right: 1px solid #dcdcde; }
.ypmc-account-card--login { background: #f6f7f7; }
.ypmc-account-card h3 { font-size: 23px; margin: 8px 0; }
.ypmc-account-card__badge { background: #d9edf7; border-radius: 99px; color: #075a78; padding: 4px 9px; }
.ypmc-registration-form label { display: block; font-weight: 600; margin: 13px 0 5px; }
.ypmc-registration-form input[type=text], .ypmc-registration-form input[type=email], .ypmc-registration-form input[type=password] { background: #fff; border: 1px solid #8c8f94; border-radius: 5px; box-sizing: border-box; min-height: 44px; padding: 8px 11px; width: 100%; }
.ypmc-registration-form input:focus { border-color: #2271b1; box-shadow: 0 0 0 1px #2271b1; outline: 2px solid transparent; }
.ypmc-registration-form__help { color: #646970; font-size: 13px; }
.ypmc-button { border-radius: 5px; box-sizing: border-box; display: inline-block; font-weight: 700; padding: 11px 18px; text-align: center; text-decoration: none; }
.ypmc-button--primary { background: #2271b1; border: 1px solid #2271b1; color: #fff; cursor: pointer; width: 100%; }
.ypmc-button--primary:hover, .ypmc-button--primary:focus { background: #135e96; color: #fff; }
.ypmc-button--secondary { background: #fff; border: 1px solid #2271b1; color: #135e96; margin: 8px 0 18px; width: 100%; }
.ypmc-button--secondary:hover, .ypmc-button--secondary:focus { background: #f0f6fc; color: #0a4b78; }
.ypmc-account-benefits { list-style: none; margin: 12px 0 0; padding: 0; }
.ypmc-account-benefits li { padding: 7px 0 7px 25px; position: relative; }
.ypmc-account-benefits li::before { color: #008a20; content: "\2713"; font-weight: 700; left: 2px; position: absolute; }
.ypmc-account-card__disabled, .ypmc-registration-notice { background: #fff8d7; border-left: 4px solid #dba617; padding: 12px; }
.ypmc-registration-notice { margin: 18px; }
.ypmc-honeypot { height: 1px; left: -10000px; overflow: hidden; position: absolute; top: auto; width: 1px; }
@media (max-width: 720px) { .ypmc-guest-access__grid { grid-template-columns: 1fr; } .ypmc-account-card--register { border-bottom: 1px solid #dcdcde; border-right: 0; } }
