:root{--background:#fff;--foreground:#171717;--border:#e5e5e5;--accent:#0b5cad}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed;--border:#2a2a2a;--accent:#5aa9e6}}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--foreground);background:var(--background);font-family:system-ui,-apple-system,Segoe UI,Hiragino Sans,Noto Sans JP,sans-serif;line-height:1.7}main{max-width:720px;margin:0 auto;padding:3rem 1.5rem}a{color:var(--accent)}.card{border:1px solid var(--border);border-radius:8px;margin-top:1.5rem;padding:1.25rem 1.5rem}.button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.6rem 1.4rem;font-size:1rem;text-decoration:none;display:inline-block}pre{background:#7f7f7f1a;border-radius:6px;margin-top:.75rem;padding:1rem;font-size:.85rem;overflow-x:auto}.site-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.auth-box{align-items:center;gap:.8rem;font-size:.85rem;display:flex}.linklike{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline}section{margin-top:2.5rem}section>h2{border-bottom:1px solid var(--border);padding-bottom:.4rem;font-size:1.05rem}.event-card{border:1px solid var(--border);color:inherit;border-radius:8px;margin-top:1rem;padding:1.1rem 1.4rem;text-decoration:none;display:block}.event-card:hover{border-color:var(--accent)}.event-card h3{margin:.35rem 0 .2rem;font-size:1.05rem}.badges{flex-wrap:wrap;gap:.4rem;display:flex}.badge{border:1px solid var(--border);color:var(--foreground);opacity:.85;border-radius:999px;padding:.05rem .6rem;font-size:.72rem}.badge-open{background:var(--accent);border-color:var(--accent);color:#fff;opacity:1}.badge-published{border-color:var(--accent);color:var(--accent);opacity:1}.muted{opacity:.75;font-size:.85rem}.price{opacity:1;margin-left:.8rem;font-weight:600}.event-meta{grid-template-columns:6rem 1fr;row-gap:.4rem;display:grid}.event-meta dt{opacity:.7;font-size:.85rem}.prewrap{white-space:pre-wrap}.ticket-table{border-collapse:collapse;width:100%;margin-top:.5rem}.ticket-table td{border-bottom:1px solid var(--border);padding:.5rem .4rem}.price-cell{white-space:nowrap;font-weight:600}.button-disabled{background:var(--border);color:var(--foreground);opacity:.6;cursor:not-allowed}.card h2{margin-bottom:.5rem;font-size:1rem}
