/* BagpipeLessons.com Inner Circle — skin for the WordPress pages the library
   still hands off to: the sign-up page (/membership-signup/) and the
   WordPress login page (/login.php, /wp-login.php). The paywall Worker
   injects this stylesheet (and wp-skin.js) into those responses. Nothing
   here changes what the forms post; it only hides the old theme's chrome
   and dresses what is left in the library's look. v42 · 9-10-26 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root {
  --ic-bg: #faf8f4; --ic-surface: #ffffff; --ic-border: #e7e1d5; --ic-border-strong: #d9d4ca;
  --ic-ink: #16233b; --ic-ink-soft: #47536b; --ic-ink-muted: #7a8497;
  --ic-accent: #2f6fed; --ic-accent-soft: rgba(47,111,237,.15); --ic-cta: #12294b; --ic-cta-hover: #1b3a6b;
  --ic-gold: #b98a2e; --ic-gold-soft: #faf3e3; --ic-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* ---------- shared ---------- */
html { background: var(--ic-bg) !important; }
body { background: var(--ic-bg) !important; color: var(--ic-ink) !important; font-family: var(--ic-font) !important; margin: 0 !important; }
body.ic-skin * { box-sizing: border-box; }
#wpadminbar { display: none !important; }
html[style] { margin-top: 0 !important; }

.ic-skin-top { display: flex; align-items: center; justify-content: space-between; gap: 14px; max-width: 720px; margin: 0 auto; padding: 22px 18px 6px; }
.ic-skin-brand { display: inline-flex; align-items: center; gap: 9px; font-weight: 800; font-size: 16.5px; letter-spacing: -.01em; color: var(--ic-ink); text-decoration: none; }
.ic-skin-brand .dot { width: 11px; height: 11px; border-radius: 50%; background: var(--ic-accent); box-shadow: 0 0 0 4px var(--ic-accent-soft); }
.ic-skin-brand .ic { color: var(--ic-gold); text-transform: uppercase; letter-spacing: .05em; font-size: 12.5px; }
.ic-skin-back { font-size: 13.5px; font-weight: 600; color: var(--ic-ink-soft); text-decoration: none; }
.ic-skin-back:hover { color: var(--ic-ink); }
.ic-skin-foot { max-width: 720px; margin: 0 auto; padding: 18px 18px 40px; font-size: 12.5px; color: var(--ic-ink-muted); text-align: center; line-height: 1.6; }
.ic-skin-foot a { color: var(--ic-ink-soft); }

/* ---------- the sign-up page (theme: themerush) ---------- */
body.ic-skin-signup header.header-wraper, body.ic-skin-signup nav.main-menu, body.ic-skin-signup #footer-container,
body.ic-skin-signup .sidebar_center, body.ic-skin-signup .sidebar_last, body.ic-skin-signup .crp_related,
body.ic-skin-signup .brack_space, body.ic-skin-signup .invite, body.ic-skin-signup .header-top, body.ic-skin-signup .mainmenu { display: none !important; }
body.ic-skin-signup .container-wrap, body.ic-skin-signup #contents, body.ic-skin-signup .row, body.ic-skin-signup .container,
body.ic-skin-signup .sidebar_content { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; float: none !important; background: transparent !important; }
body.ic-skin-signup .post-1022, body.ic-skin-signup .page-sidebar { float: none !important; width: auto !important; max-width: 720px !important;
  margin: 8px auto 0 !important; padding: 30px 32px 28px !important; background: var(--ic-surface) !important; border: 1px solid var(--ic-border) !important;
  border-radius: 24px !important; box-shadow: 0 6px 24px -8px rgba(22,35,59,.12) !important; }
body.ic-skin-signup .page-title { font: 800 28px/1.15 var(--ic-font) !important; letter-spacing: -.02em; color: var(--ic-ink) !important; margin: 0 0 10px !important; padding: 0 !important; border: 0 !important; }
body.ic-skin-signup .post-1022 p, body.ic-skin-signup .post-1022 li { font: 400 15px/1.6 var(--ic-font) !important; color: var(--ic-ink-soft) !important; }
body.ic-skin-signup .post-1022 > p:first-of-type { margin: 0 0 14px !important; }
body.ic-skin-signup .post-1022 ol { margin: 0 0 8px !important; padding-left: 0 !important; list-style: none !important; display: grid; gap: 8px; }
body.ic-skin-signup .post-1022 ol li { background: var(--ic-gold-soft) !important; border: 1px solid #ecd9a8 !important; border-radius: 14px !important; padding: 10px 14px !important; }
body.ic-skin-signup .post-1022 ol li strong { color: var(--ic-ink) !important; font-weight: 700 !important; }
body.ic-skin-signup .post-1022 a { color: var(--ic-accent) !important; }

/* the s2Member form */
body.ic-skin-signup .s2member-pro-stripe-form { margin-top: 18px !important; }
body.ic-skin-signup .s2member-pro-stripe-form-section { margin: 0 0 6px !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
body.ic-skin-signup .s2member-pro-stripe-form-section-title { font: 800 12px/1.3 var(--ic-font) !important; letter-spacing: .08em; text-transform: uppercase; color: var(--ic-gold) !important;
  margin: 22px 0 8px !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
body.ic-skin-signup .s2member-pro-stripe-form-div { margin: 0 0 10px !important; padding: 0 !important; }
body.ic-skin-signup .s2member-pro-stripe-form label { display: block !important; font: 700 13px/1.4 var(--ic-font) !important; color: var(--ic-ink) !important; margin: 0 0 5px !important; }
body.ic-skin-signup .s2member-pro-stripe-form input[type=text], body.ic-skin-signup .s2member-pro-stripe-form input[type=email],
body.ic-skin-signup .s2member-pro-stripe-form input[type=password], body.ic-skin-signup .s2member-pro-stripe-form select,
body.ic-skin-signup #s2member-pro-stripe-form-card-element {
  width: 100% !important; max-width: none !important; font: 400 16px/1.3 var(--ic-font) !important; color: var(--ic-ink) !important;
  padding: 12px 14px !important; border-radius: 12px !important; border: 2px solid var(--ic-border-strong) !important; background: var(--ic-bg) !important;
  box-shadow: none !important; outline: none !important; height: auto !important; margin: 0 !important; }
body.ic-skin-signup .s2member-pro-stripe-form input:focus, body.ic-skin-signup .s2member-pro-stripe-form select:focus { border-color: var(--ic-accent) !important; box-shadow: 0 0 0 4px var(--ic-accent-soft) !important; }
body.ic-skin-signup .s2member-pro-stripe-form input[type=password] + input[type=password] { margin-top: 8px !important; }
body.ic-skin-signup .s2member-pro-stripe-form-response-error:empty, body.ic-skin-signup #s2member-pro-stripe-checkout-form-response-section:has(.s2member-pro-stripe-form-response-error:empty) { display: none !important; }
body.ic-skin-signup .s2member-pro-stripe-form-response-error { background: #fdecec !important; border: 1px solid #f3b4b4 !important; color: #8a1f1f !important; border-radius: 12px !important; padding: 10px 14px !important; font: 500 13.5px/1.5 var(--ic-font) !important; }
body.ic-skin-signup .s2member-pro-stripe-coupon-apply, body.ic-skin-signup input[type=button] { font: 600 13px/1 var(--ic-font) !important; padding: 10px 14px !important; border-radius: 999px !important;
  border: 1px solid var(--ic-border-strong) !important; background: var(--ic-surface) !important; color: var(--ic-ink) !important; margin-top: 8px !important; cursor: pointer; }
body.ic-skin-signup #s2member-pro-stripe-checkout-form-coupon-div input[type=text] { margin-bottom: 4px !important; }
body.ic-skin-signup .ws-plugin--s2member-password-strength { font: 500 12.5px/1.4 var(--ic-font) !important; color: var(--ic-ink-muted) !important; margin-top: 6px !important; padding: 0 !important; background: transparent !important; border: 0 !important; }
body.ic-skin-signup #s2member-pro-stripe-form-card-errors { color: #8a1f1f !important; font: 500 13px/1.4 var(--ic-font) !important; margin-top: 6px !important; }
body.ic-skin-signup .s2member-pro-stripe-submit, body.ic-skin-signup button[type=submit] {
  width: 100% !important; margin-top: 10px !important; font: 800 16px/1 var(--ic-font) !important; color: #fff !important; background: var(--ic-cta) !important;
  border: 0 !important; border-radius: 999px !important; padding: 16px 20px !important; cursor: pointer; box-shadow: 0 6px 20px -6px rgba(18,41,75,.35) !important; text-shadow: none !important; }
body.ic-skin-signup .s2member-pro-stripe-submit:hover, body.ic-skin-signup button[type=submit]:hover { background: var(--ic-cta-hover) !important; }
body.ic-skin-signup #s2member-pro-stripe-checkout-form-submission-section-title { display: none !important; }
body.ic-skin-signup .s2member-pro-stripe-form-section:has(> div:empty:only-child) { display: none !important; }

/* ---------- the WordPress login page (only seen after a failed login) ---------- */
html body.ic-skin-login div#login { width: 100% !important; max-width: 460px !important; margin: 0 auto !important; padding: 26px 18px 40px !important; }
body.ic-skin-login #login h1 { margin: 0 0 8px !important; }
html body.ic-skin-login div#login h1 a { background: none !important; text-decoration: none !important; width: auto !important; height: auto !important; text-indent: 0 !important; overflow: visible !important;
  font: 800 12px/1.3 var(--ic-font) !important; letter-spacing: .08em; text-transform: uppercase; color: var(--ic-gold) !important; display: block !important; margin: 0 !important; padding: 0 !important; }
html body.ic-skin-login div#login h1 a::after { content: 'Log in to the Inner Circle'; display: block; font: 800 28px/1.15 var(--ic-font); letter-spacing: -.02em; text-transform: none; color: var(--ic-ink); margin-top: 6px; }
html body.ic-skin-login div#login form {
  background: var(--ic-surface) !important; border: 1px solid var(--ic-border) !important; border-radius: 24px !important; box-shadow: 0 6px 24px -8px rgba(22,35,59,.12) !important; padding: 26px 28px 22px !important; margin-top: 16px !important; }
html body.ic-skin-login div#login form label, html body.ic-skin-login div#login label { font: 700 13px/1.4 var(--ic-font) !important; color: var(--ic-ink) !important; }
html body.ic-skin-login div#login form input.input, html body.ic-skin-login div#login form input[type=text], html body.ic-skin-login div#login form input[type=password], html body.ic-skin-login div#login form input[type=email] {
  font: 400 16px/1.3 var(--ic-font) !important; color: var(--ic-ink) !important; padding: 12px 14px !important; border-radius: 12px !important; border: 2px solid var(--ic-border-strong) !important;
  background: var(--ic-bg) !important; box-shadow: none !important; margin: 6px 0 14px !important; min-height: 0 !important; }
html body.ic-skin-login div#login form input.input:focus, html body.ic-skin-login div#login form input[type=password]:focus { border-color: var(--ic-accent) !important; box-shadow: 0 0 0 4px var(--ic-accent-soft) !important; }
body.ic-skin-login .wp-hide-pw { display: none !important; }
body.ic-skin-login .forgetmenot label { font-weight: 600 !important; color: var(--ic-ink-soft) !important; }
body.ic-skin-login .submit { float: none !important; margin-top: 10px !important; }
html body.ic-skin-login div#login form input[type=submit], html body.ic-skin-login div#login form input[type=submit]:focus, html body.ic-skin-login div#login form input[type=submit]:active {
  float: none !important; width: 100% !important; font: 800 16px/1 var(--ic-font) !important; color: #fff !important; background: var(--ic-cta) !important; border: 0 !important;
  border-radius: 999px !important; padding: 16px 20px !important; min-height: 0 !important; height: auto !important; box-shadow: 0 6px 20px -6px rgba(18,41,75,.35) !important; text-shadow: none !important; }
html body.ic-skin-login div#login form input[type=submit]:hover { background: var(--ic-cta-hover) !important; color: #fff !important; border: 0 !important; }
body.ic-skin-login #login_error, body.ic-skin-login .message, body.ic-skin-login .success {
  border: 1px solid #f3b4b4 !important; border-left-width: 1px !important; background: #fdecec !important; color: #8a1f1f !important; border-radius: 12px !important; padding: 10px 14px !important;
  font: 500 13.5px/1.5 var(--ic-font) !important; box-shadow: none !important; margin: 16px 0 0 !important; }
body.ic-skin-login .message, body.ic-skin-login .success { border-color: #bcd3ff !important; background: #eaf1ff !important; color: #163a86 !important; }
html body.ic-skin-login div#login p#nav, html body.ic-skin-login div#login p#backtoblog { text-align: center !important; font: 500 13.5px/1.7 var(--ic-font) !important; padding: 0 !important; margin: 14px 0 0 !important; }
html body.ic-skin-login div#login p#nav a, html body.ic-skin-login div#login p#backtoblog a { color: var(--ic-ink-soft) !important; }
body.ic-skin-login .language-switcher, body.ic-skin-login .privacy-policy-page-link { display: none !important; }

/* s2Member's login page sets every element to 12px Verdana with !important; these win on specificity. */
html body.ic-skin-login, html body.ic-skin-login .ic-skin-top *, html body.ic-skin-login .ic-skin-foot { font-family: var(--ic-font) !important; }
html body.ic-skin-login .ic-skin-brand { font-size: 16.5px !important; } html body.ic-skin-login .ic-skin-brand .ic { font-size: 12.5px !important; }
html body.ic-skin-login .ic-skin-back { font-size: 13.5px !important; } html body.ic-skin-login .ic-skin-foot, html body.ic-skin-login .ic-skin-foot a { font-size: 12.5px !important; }
html body.ic-skin-login div#login h1 a { font-size: 12px !important; }
html body.ic-skin-login div#login form p { margin: 0 0 12px !important; }
html body.ic-skin-login div#login form .forgetmenot label { font-size: 13.5px !important; font-weight: 600 !important; color: var(--ic-ink-soft) !important; }

/* 9-10-26 (v43.2): belt-and-braces width control for the sign-up card — the
   theme's grid classes (.grid_7 / .grid_12 / .container / .row) set explicit
   widths and floats; win on specificity and pin the card to 720px centered. */
html body.ic-skin-signup .container-wrap, html body.ic-skin-signup .full-wrapper, html body.ic-skin-signup .three-columns-layout,
html body.ic-skin-signup section#contents, html body.ic-skin-signup #contents .row, html body.ic-skin-signup #contents .container,
html body.ic-skin-signup .center_350, html body.ic-skin-signup .sidebar_content {
  display: block !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; float: none !important; }
html body.ic-skin-signup .sidebar_content > div.page-sidebar, html body.ic-skin-signup div#post-1022, html body.ic-skin-signup .post-1022, html body.ic-skin-signup .grid_7.page-sidebar {
  display: block !important; float: none !important; width: calc(100% - 32px) !important; max-width: 720px !important; min-width: 0 !important;
  margin: 8px auto 0 !important; padding: 30px 32px 28px !important; box-sizing: border-box !important; }
html body.ic-skin-signup .post-1022 * { max-width: 100%; box-sizing: border-box; }
html body.ic-skin-signup .s2member-pro-stripe-form, html body.ic-skin-signup .s2member-pro-stripe-form-section, html body.ic-skin-signup .s2member-pro-stripe-form-div { width: auto !important; max-width: 100% !important; float: none !important; }
@media (max-width: 640px) { html body.ic-skin-signup .post-1022 { padding: 22px 18px 20px !important; } }
/* the theme floats the coupon Apply button to the right edge; keep it by the field */
html body.ic-skin-signup #s2member-pro-stripe-checkout-form-coupon-div input[type=button], html body.ic-skin-signup .s2member-pro-stripe-coupon-apply { float: none !important; display: inline-block !important; width: auto !important; margin: 8px 0 0 !important; }
html body.ic-skin-signup #s2member-pro-stripe-checkout-form-submit-div { text-align: center !important; }
html body.ic-skin-signup #s2member-pro-stripe-checkout-submit { float: none !important; }

/* 9-11-26: "Related Posts:" under the checkout form (Jori) — every related-posts plugin
   markup we know of, plus a JS sweep in wp-skin.js for a bare heading + list. */
body.ic-skin-signup .crp_related, body.ic-skin-signup .wp_rp_wrap, body.ic-skin-signup .yarpp-related,
body.ic-skin-signup .rp4wp-related-posts, body.ic-skin-signup .related-posts, body.ic-skin-signup .relatedposts,
body.ic-skin-signup #related_posts, body.ic-skin-signup .jp-relatedposts, body.ic-skin-signup .ic-related-gone { display: none !important; }
