/* Host account pages: extras on top of the shared "film box" style in style.css */
.cta { margin: 0 0 22px; }
.cta .btn { width: 100%; }
@media (min-width: 560px) { .cta .btn { width: auto; } }

.plain-link { color: var(--ink); font-weight: 700; }
.plain-link-inv { color: #fff; font-weight: 700; }
.muted { color: #6b6150; font-size: .92rem; }
.topnav nav a[aria-current="page"] { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 5px; }
.btn[disabled], .btn[aria-disabled="true"] { opacity: .55; cursor: not-allowed; box-shadow: 2px 2px 0 var(--ink); transform: none; }

.stack { display: flex; flex-direction: column; gap: 16px; }
.stack h3 { margin: 0; font-size: 1.05rem; }
.rule { border: 0; border-top: 3px dashed var(--ink); opacity: .25; width: 100%; margin: 4px 0; }
.section-h { font-family: var(--display); font-weight: 400; font-size: 1.5rem; margin: 30px 0 4px; }

/* highlighted cards (reseller rights, "everything is free") */
.box.highlight { background: var(--ink); color: var(--cream); }
.box.highlight h2 { color: var(--yellow); }
.box.highlight .hint { color: #d9cfb9; }
.box.highlight .btn-ink { background: var(--yellow); color: var(--ink); border-color: var(--yellow); box-shadow: 4px 4px 0 var(--red); }

.plan-line { display: flex; align-items: center; gap: 10px; font-size: 1.15rem; }

/* event list */
.event-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.event-list li { border: 3px solid var(--ink); border-radius: 14px; background: #fff; padding: 14px 16px; display: flex; flex-direction: column; gap: 8px; }
.event-main { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; color: var(--ink); text-decoration: none; }
.event-main strong { font-size: 1.1rem; }
.event-main:hover strong { text-decoration: underline; }
.event-main:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; border-radius: 6px; }
.event-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; font-size: .92rem; }

/* plan cards */
.plan-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 22px; margin-bottom: 8px; }
.plan-card { background: var(--paper); border: 3px solid var(--ink); border-radius: 18px; padding: 20px; box-shadow: 7px 7px 0 var(--ink); display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.plan-card.current { outline: 4px solid var(--red); outline-offset: 3px; }
.plan-card h3 { font-family: var(--display); font-weight: 400; font-size: 1.35rem; margin: 0; }
.plan-card .price { margin: 0; }
.plan-card .price b { font-family: var(--display); font-weight: 400; font-size: 2.2rem; line-height: 1; }
.plan-card p { margin: 0; }
.perks { margin: 0; padding-left: 1.2em; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.plan-card form { width: 100%; }
.plan-card .btn { width: 100%; }
