/* Platform additions to the module pages: access banner, paywall, account box, watermark, copy deterrence. */

.ctp-screen{padding-bottom:64px}
.ctp-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px 24px}
.ctp-card h3{font:600 21px/1.25 var(--f-display);margin:0 0 8px}
.ctp-card p{margin:0 0 12px}
.ctp-fine{font-size:12.5px;color:var(--muted);margin:14px 0 0}
.ctp-loading{color:var(--muted);font:13px var(--f-mono);padding:48px 0}
.btnrow a.btn{text-decoration:none;display:inline-block}
.btnrow{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

/* access banner on the module overview */
.ctp-access{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid var(--line);border-left:3px solid var(--tide);background:var(--surface);border-radius:var(--r);padding:14px 16px;margin:0 0 14px}
.ctp-access>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 260px}
.ctp-access b{font:600 16px/1.3 var(--f-display)}
.ctp-access span{font-size:13.5px;color:var(--muted)}
.ctp-access .btnrow{margin:0}
.ctp-free{border-left-color:var(--good)}
.ctp-active{border-left-color:var(--good)}
.ctp-pending{border-left-color:var(--brass)}
.ctp-expired,.ctp-locked{border-left-color:var(--brass);background:var(--brass-soft)}

/* paywall in place of a locked lesson */
.ctp-paywall{margin:26px 0 8px;text-align:center;border:1px solid var(--line);background:var(--surface);border-radius:var(--r);padding:30px 24px}
.ctp-paywall h3{font:600 22px/1.25 var(--f-display);margin:8px 0}
.ctp-paywall p{max-width:34rem;margin:0 auto 16px;color:var(--muted)}
.ctp-paywall .btnrow{justify-content:center}
.ctp-lock{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--brass-soft);color:var(--brass)}
.ctp-lock svg{width:16px;height:16px}

/* account box at the foot of the navigation rail */
.ctp-acct{margin-top:auto;border-top:1px solid var(--line);padding-top:12px;display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);min-width:0}
.ctp-acct>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ctp-acct a,.ctp-acct button{color:var(--tide);background:none;border:0;padding:0;font:inherit;cursor:pointer;text-decoration:underline}
@media (max-width:900px){.ctp-acct{order:5;width:100%;flex-direction:row;justify-content:space-between;margin-top:0;display:none}.rail.open .ctp-acct{display:flex}}

/* watermark: name and date across the page */
.ctp-wm{position:fixed;inset:0;z-index:40;pointer-events:none;opacity:.16;background-repeat:repeat}
main[data-mode="dark"]~.ctp-wm,body:has(main[data-mode="dark"]) .ctp-wm{opacity:.22}

/* copy and print deterrence */
.ctp-protected main{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.ctp-protected main input,.ctp-protected main textarea{-webkit-user-select:text;user-select:text}
.ctp-protected img{-webkit-user-drag:none}
.ctp-veiled main{filter:blur(14px);transition:filter .05s}
body.ctp-veiled::after{content:"Click to continue reading";position:fixed;inset:0;z-index:60;display:grid;place-items:center;font:500 15px var(--f-body);color:#15202A;background:rgba(243,245,246,.35)}
@media print{
  body.ctp-protected *{display:none!important}
  body.ctp-protected::after{content:"Printing is not available for course content.";display:block;padding:40px;font:16px sans-serif}
}
.lessons .d svg{color:var(--muted)}
.ctp-freemark{font:500 9.5px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--good);border:1px solid currentColor;border-radius:10px;padding:0 5px}
.ctp-cert{border-left-color:var(--tide)}
.ctp-cert span+span{margin-top:2px}
.ctp-recorded{margin-top:8px;font-size:13.5px;color:var(--good)}
