/* DWC Subscription — Paywall */

.dwc-teaser {
    position: relative;
    overflow: hidden;
    max-height: 380px;
}

/* In archive/home loops the teaser has no max-height cap */
.dwc-teaser-loop {
    max-height: none;
    overflow: visible;
}

/* Inline lock badge shown in excerpt */
.dwc-inline-lock {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: .8rem;
    font-weight: 600;
    color: #1a56db;
    text-decoration: none;
    padding: 2px 8px;
    border: 1px solid #bfdbfe;
    border-radius: 20px;
    background: #eff6ff;
    margin-left: 4px;
    white-space: nowrap;
    vertical-align: middle;
}
.dwc-inline-lock:hover { background: #dbeafe; text-decoration: none; }

/* Compact loop CTA */
.dwc-loop-prompt {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 8px 0 0;
    font-size: .88rem;
}
.dwc-loop-subscribe {
    font-weight: 700;
    color: #1a56db;
    text-decoration: none;
}
.dwc-loop-subscribe:hover { text-decoration: underline; }
.dwc-loop-sep   { color: #d1d5db; }
.dwc-loop-signin {
    color: #6b7280;
    text-decoration: none;
    font-size: .85rem;
}
.dwc-loop-signin:hover { color: #374151; text-decoration: underline; }

.dwc-paywall-wrap {
    position: relative;
    margin-top: -80px;
}

.dwc-paywall-fade {
    height: 110px;
    background: linear-gradient(to bottom, transparent, #fff);
    pointer-events: none;
}

.dwc-paywall-box {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 40px 36px 36px;
    text-align: center;
    box-shadow: 0 6px 28px rgba(0,0,0,.09);
    max-width: 660px;
    margin: 0 auto 48px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.dwc-paywall-lock { color: #1a56db; margin-bottom: 14px; }

.dwc-paywall-headline {
    font-size: 1.65rem;
    font-weight: 700;
    color: #111827;
    margin: 0 0 8px;
    line-height: 1.2;
}

.dwc-paywall-sub {
    color: #6b7280;
    font-size: .98rem;
    margin: 0 0 28px;
}

/* Plans row */
.dwc-plans {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 22px;
}

.dwc-plan-btn {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    padding: 18px 20px 14px;
    border: 2px solid #e2e8f0;
    border-radius: 10px;
    text-decoration: none;
    color: #111827;
    min-width: 120px;
    transition: border-color .15s, box-shadow .15s, transform .1s;
    background: #fff;
}
.dwc-plan-btn:hover {
    border-color: #1a56db;
    box-shadow: 0 0 0 3px rgba(26,86,219,.12);
    transform: translateY(-2px);
    color: #1a56db;
    text-decoration: none;
}
.dwc-plan-featured {
    border-color: #1a56db;
    background: #eff6ff;
}
.dwc-plan-badge {
    position: absolute;
    top: -11px;
    left: 50%;
    transform: translateX(-50%);
    background: #1a56db;
    color: #fff;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .05em;
    padding: 2px 10px;
    border-radius: 20px;
    white-space: nowrap;
}
.dwc-plan-label  { font-weight: 700; font-size: .95rem; }
.dwc-plan-price  { font-size: 1.2rem; font-weight: 800; color: #1a56db; }
.dwc-plan-period { font-size: .74rem; color: #9ca3af; }

/* Divider */
.dwc-paywall-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 16px;
}
.dwc-paywall-divider::before,
.dwc-paywall-divider::after { content:""; flex:1; height:1px; background:#e5e7eb; }
.dwc-paywall-divider span { color: #9ca3af; font-size: .84rem; }

.dwc-paywall-login { color: #6b7280; font-size: .93rem; margin: 0; }
.dwc-paywall-login a { color: #1a56db; font-weight: 600; text-decoration: none; }
.dwc-paywall-login a:hover { text-decoration: underline; }

/* My Account subscription info banner */
.dwc-account-notice {
    padding: 12px 16px;
    border-radius: 6px;
    margin-bottom: 20px;
    font-size: .95rem;
}
.dwc-active-sub  { background: #ecfdf5; border: 1px solid #a7f3d0; color: #065f46; }
.dwc-expired-sub,
.dwc-no-sub      { background: #fff7ed; border: 1px solid #fed7aa; color: #92400e; }
.dwc-account-notice a { color: inherit; font-weight: 600; }
