:root{--fg:#1a1a1a;--bg:#ffffff;--muted:#666;--border:#ddd;--accent:#2b6157}*{box-sizing:border-box}body{margin:0;color:var(--fg);background:var(--bg);font-family:system-ui,-apple-system,sans-serif;line-height:1.5}main{padding:2rem 1rem 4rem}footer.site,header.site,main{max-width:860px;margin:0 auto}footer.site,header.site{padding:1rem;display:flex;gap:1rem;flex-wrap:wrap;align-items:baseline}footer.site{border-top:1px solid var(--border);color:var(--muted);font-size:.85rem}a{color:var(--accent)}.cell-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:.75rem;gap:.75rem;margin:1rem 0}.cell{border:1px solid var(--border);border-radius:8px;padding:1rem;text-align:left;background:none;cursor:pointer;font:inherit}.cell[aria-pressed=true]{border-color:var(--accent);outline:2px solid var(--accent)}.cell .price{font-size:1.25rem;font-weight:600}.cell .meta{color:var(--muted);font-size:.85rem}form.checkout{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}form.checkout input[type=email]{flex:1 1 260px;padding:.6rem;border:1px solid var(--border);border-radius:6px;font:inherit}form.checkout button{padding:.6rem 1.4rem;border:none;border-radius:6px;background:var(--accent);color:#fff;font:inherit;cursor:pointer}form.checkout button:disabled{opacity:.5;cursor:not-allowed}.error{color:#b00020}.notice{background:#f4f7f6;border:1px solid var(--border);border-radius:8px;padding:.75rem 1rem}.plan-page{max-width:960px}.plan-eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-size:.75rem;font-weight:700}.plan-page h1{font-family:Georgia,serif;font-size:clamp(2rem,5vw,3.4rem);font-weight:400;line-height:1.1;max-width:650px}.plan-summary{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;border-block:1px solid var(--border);margin:2rem 0;padding:1.5rem 0}.plan-note,.plan-summary span{color:var(--muted);font-size:.875rem}.plan-summary h2{font-size:1.1rem;margin:.5rem 0}.plan-summary p{margin-bottom:0}.plan-date{font-family:Georgia,serif;font-size:1.5rem}.plan-options{border:0;padding:0;margin:2rem 0 1rem}.plan-options legend{font-weight:600;font-size:1.2rem}.plan-option{display:grid;grid-template-columns:auto 1fr;grid-gap:.5rem .75rem;gap:.5rem .75rem;padding:1.2rem;border:1px solid var(--border);border-radius:8px;cursor:pointer}.plan-option input{accent-color:var(--accent)}.plan-option span{grid-column:2;font-size:.875rem}.plan-option .price{font-size:1.5rem}.plan-option.selected{border-color:var(--accent);background:#f4f7f6;outline:1px solid var(--accent)}.plan-primary,.plan-secondary{font:inherit;cursor:pointer;border-radius:6px;padding:.75rem 1.25rem;border:1px solid var(--accent)}.plan-primary{background:var(--accent);color:white}.plan-secondary{background:transparent;color:var(--accent)}.plan-page button:disabled{opacity:.5;cursor:not-allowed}.plan-page :focus-visible{outline:3px solid var(--accent);outline-offset:4px}.account-login{display:grid;grid-gap:.8rem;gap:.8rem;max-width:440px;margin-block:2rem}.account-login input{font:inherit;padding:.8rem;border:1px solid var(--border);border-radius:6px;width:100%}.account-actions,.account-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.account-toolbar{justify-content:space-between}.account-subscriptions{display:grid;grid-gap:1.5rem;gap:1.5rem;margin-block:2rem}.account-subscription{border:1px solid var(--border);padding:clamp(1rem,3vw,2rem);border-radius:8px;overflow-wrap:anywhere}.account-subscription h2{font-size:1.25rem;margin:0}.account-status{background:#f4f7f6;border-radius:20px;padding:.25rem .75rem;font-size:.85rem}.account-actions{margin-block:1rem}.plan-billing{border-top:1px solid var(--border);margin-top:3rem;padding-top:1rem}