.pc-membership-checkout-wrapper { max-width: 1200px; margin: 0 auto; padding: 20px; } .pc-membership-pricing-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 24px; padding: 20px 0; } .pc-membership-pricing-card { background: #fff; border: 2px solid #e5e5e5; border-radius: 8px; padding: 24px; text-align: center; transition: all 0.3s ease; position: relative; } .pc-membership-pricing-card:hover { border-color: #2271b1; transform: translateY(-4px); box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); } .pc-membership-pricing-card.featured { border-color: #2271b1; transform: scale(1.02); } .pc-membership-pricing-card.featured::before { content: 'Popular'; position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: #2271b1; color: #fff; padding: 4px 16px; border-radius: 20px; font-size: 12px; font-weight: 600; text-transform: uppercase; } .pc-membership-pricing-header { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #e5e5e5; } .pc-membership-plan-name { font-size: 24px; margin: 0 0 15px; color: #23282d; font-weight: 700; } .pc-membership-plan-price { color: #2271b1; } .pc-membership-price-amount { font-size: 42px; font-weight: 700; line-height: 1; } .pc-membership-price-interval { font-size: 16px; color: #646970; font-weight: 400; } .pc-membership-trial-badge { display: inline-block; background: #46b450; color: #fff; padding: 4px 12px; border-radius: 20px; font-size: 12px; font-weight: 600; margin-top: 10px; } .pc-membership-plan-description { color: #646970; margin-bottom: 20px; font-size: 14px; line-height: 1.5; } .pc-membership-plan-benefits { list-style: none; padding: 0; margin: 0 0 24px; text-align: left; } .pc-membership-plan-benefits li { padding: 10px 0; display: flex; align-items: center; gap: 10px; color: #3c434a; border-bottom: 1px solid #f0f0f1; } .pc-membership-plan-benefits li:last-child { border-bottom: none; } .pc-membership-plan-benefits .dashicons { color: #46b450; font-size: 20px; width: 20px; height: 20px; flex-shrink: 0; } .pc-membership-select-plan-btn, .pc-membership-checkout-btn { width: 100%; padding: 14px 24px; font-size: 16px; font-weight: 600; border-radius: 4px; transition: all 0.2s ease; } .pc-membership-checkout-form-wrapper { background: #fff; border-radius: 8px; padding: 30px; margin-top: 30px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); } .pc-membership-login-wrapper, .pc-membership-register-wrapper, .pc-membership-account-wrapper { max-width: 500px; margin: 0 auto; padding: 40px 20px; } .pc-membership-login-form-container, .pc-membership-register-form-container, .pc-membership-account-wrapper { background: #fff; border-radius: 8px; padding: 40px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); } .pc-membership-login-form-container h2, .pc-membership-register-form-container h2, .pc-membership-account-wrapper h2, .pc-membership-account-wrapper h3 { margin-top: 0; margin-bottom: 24px; color: #23282d; } .pc-membership-form-group { margin-bottom: 20px; } .pc-membership-form-group label { display: block; font-weight: 600; margin-bottom: 6px; color: #3c434a; } .pc-membership-form-group input[type="text"], .pc-membership-form-group input[type="email"], .pc-membership-form-group input[type="password"] { width: 100%; padding: 12px; border: 1px solid #c3c4c7; border-radius: 4px; font-size: 16px; transition: border-color 0.2s ease; } .pc-membership-form-group input:focus { outline: none; border-color: #2271b1; box-shadow: 0 0 0 3px rgba(34, 113, 177, 0.1); } .pc-membership-remember-me { font-weight: normal; } .pc-membership-remember-me input { margin-right: 8px; } .pc-membership-login-btn, .pc-membership-register-btn { width: 100%; padding: 14px 24px; font-size: 16px; font-weight: 600; margin-top: 10px; } .pc-membership-login-links { margin-top: 20px; text-align: center; padding-top: 20px; border-top: 1px solid #e5e5e5; } .pc-membership-login-links a { display: inline-block; margin: 0 10px; color: #2271b1; text-decoration: none; } .pc-membership-login-links a:hover { text-decoration: underline; } .pc-membership-login-message, .pc-membership-register-message { margin-top: 15px; padding: 12px; border-radius: 4px; display: none; } .pc-membership-login-message.success, .pc-membership-register-message.success { background: #dff0d8; border: 1px solid #d6e9c6; color: #3c763d; display: block; } .pc-membership-login-message.error, .pc-membership-register-message.error { background: #f2dede; border: 1px solid #ebccd1; color: #a94442; display: block; } .pc-membership-account-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid #e5e5e5; } .pc-membership-account-header h2 { margin: 0; } .pc-membership-subscription-details { background: #f0f0f1; border-radius: 8px; padding: 24px; margin-bottom: 30px; } .pc-membership-subscription-details h3 { margin-top: 0; margin-bottom: 20px; } .pc-membership-subscription-info { margin-bottom: 20px; } .pc-membership-subscription-row { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid #e5e5e5; } .pc-membership-subscription-row:last-child { border-bottom: none; } .pc-membership-label { color: #646970; font-weight: 500; } .pc-membership-value { font-weight: 600; color: #23282d; } .pc-membership-status-active { color: #46b450; } .pc-membership-status-cancelled, .pc-membership-status-expired, .pc-membership-status-past_due { color: #dc3232; } .pc-membership-status-pending { color: #f56e28; } .pc-membership-subscription-actions { padding-top: 15px; border-top: 1px solid #e5e5e5; } .pc-membership-no-subscription { text-align: center; padding: 40px 20px; background: #f0f0f1; border-radius: 8px; } .pc-membership-no-subscription p { margin-bottom: 20px; color: #646970; } .pc-membership-account-section { margin-top: 30px; padding-top: 30px; border-top: 1px solid #e5e5e5; } .pc-membership-account-section h3 { margin-bottom: 20px; } .pc-membership-success-wrapper, .pc-membership-cancel-wrapper { max-width: 600px; margin: 0 auto; padding: 60px 20px; text-align: center; } .pc-membership-success-message, .pc-membership-cancel-message { background: #fff; border-radius: 8px; padding: 50px 40px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); } .pc-membership-success-icon, .pc-membership-cancel-icon { margin-bottom: 20px; } .pc-membership-success-message h2, .pc-membership-cancel-message h2 { margin: 0 0 15px; color: #23282d; } .pc-membership-success-message p, .pc-membership-cancel-message p { color: #646970; margin-bottom: 30px; font-size: 16px; } .pc-membership-message { padding: 15px 20px; border-radius: 4px; margin: 20px 0; } .pc-membership-message-info { background: #d9edf7; border: 1px solid #bce8f1; color: #31708f; } .pc-membership-message-success { background: #dff0d8; border: 1px solid #d6e9c6; color: #3c763d; } .pc-membership-message-error { background: #f2dede; border: 1px solid #ebccd1; color: #a94442; } @media screen and (max-width: 768px) { .pc-membership-pricing-cards { grid-template-columns: 1fr; } .pc-membership-pricing-card.featured { transform: none; } .pc-membership-login-form-container, .pc-membership-register-form-container, .pc-membership-account-wrapper { padding: 24px; } .pc-membership-account-header { flex-direction: column; gap: 15px; text-align: center; } .pc-membership-subscription-row { flex-direction: column; gap: 5px; } } @media (prefers-reduced-motion: reduce) { .pc-membership-pricing-card, .pc-membership-select-plan-btn, .pc-membership-pricing-card:hover { transition: none; transform: none; } } @media (prefers-contrast: high) { .pc-membership-pricing-card { border-width: 3px; } .pc-membership-plan-benefits .dashicons { color: #006600; } }