:root{--bg:#fcfcfd;--card:#ffffff;--fg:#111827;--muted:#6b7280;--accent:#4f46e5;--accent-dark:#3730a3;--accent-light:#e0e7ff;--border:#f3f4f6;--warn-bg:#fffbeb;--warn-fg:#b45309;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-premium:0 20px 40px -15px rgba(0,0,0,0.05);color-scheme:light}@import url("https://fonts.googleapis.com/css2?family=Assistant:wght@400;600;700&family=Rubik:wght@400;500;600;700&display=swap");*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:Rubik,Assistant,system-ui,-apple-system,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}.wrap{max-width:640px;margin:0 auto;padding:2rem 1rem 5rem}.hero{text-align:center;padding:2.5rem 0 2rem}.hero h1{margin:0 0 .5rem;font-size:2.4rem;font-weight:700;letter-spacing:-.02em;color:var(--fg)}.sub{color:var(--muted);margin:0 auto;max-width:32rem;font-size:1.1rem;line-height:1.5}.premium-banner{background:linear-gradient(135deg,#111827,#1f2937);border-radius:20px;padding:1.5rem 2rem;margin:1.5rem 0 2rem;color:#fff;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 12px 24px -10px rgba(17,24,39,.4);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.premium-banner:hover{transform:translateY(-2px);box-shadow:0 16px 32px -10px rgba(17,24,39,.5)}.pb-title{font-size:1.25rem;font-weight:700;margin:0 0 .25rem;background:linear-gradient(90deg,#a78bfa,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.pb-sub{font-size:.95rem;color:#d1d5db;margin:0}.card{background:var(--card);border:1px solid var(--border);border-radius:20px;padding:1.75rem;margin-top:1.25rem;box-shadow:var(--shadow-premium)}.card h2{margin:0 0 1rem;font-size:1.25rem;font-weight:600;letter-spacing:-.01em}.center{text-align:center}.card.center .btn{margin:1rem 0 .5rem}.muted{color:var(--muted)}.small{font-size:.85rem}.flash{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;border-radius:16px;padding:1rem 1.25rem;margin-top:1.5rem;text-align:center;font-weight:500}.card.warn{background:var(--warn-bg);border-color:#fef3c7;color:var(--warn-fg)}.card.warn a{color:var(--warn-fg);font-weight:600;text-decoration:underline;-webkit-text-decoration-color:rgba(180,83,9,.3);text-decoration-color:rgba(180,83,9,.3)}.btn{display:inline-block;border:1px solid transparent;border-radius:999px;padding:.75rem 1.75rem;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;transition:all .2s ease;font-size:.95rem}.btn.primary{background:var(--accent);color:#fff;box-shadow:0 4px 14px 0 rgba(79,70,229,.39)}.btn.primary:hover:not(:disabled){background:var(--accent-dark);transform:translateY(-1px);box-shadow:0 6px 20px rgba(79,70,229,.45)}.btn.ghost{background:transparent;border-color:#e5e7eb;color:var(--fg)}.btn.ghost:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.btn.ghost.danger{color:#dc2626;border-color:#fecaca}.btn.ghost.danger:hover:not(:disabled){background:#fef2f2}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.cats{display:flex;flex-wrap:wrap;gap:.6rem}.chip{border:1px solid #e5e7eb;background:#fff;border-radius:999px;padding:.5rem 1.25rem;font:inherit;font-size:.95rem;cursor:pointer;transition:all .2s ease;color:var(--fg)}.chip:hover{border-color:#d1d5db;background:#f9fafb}.chip.on{border-color:transparent;background:var(--accent-light);color:var(--accent-dark);font-weight:600}.row{display:flex;align-items:center;gap:1rem}.between{justify-content:space-between;flex-wrap:wrap}.events{list-style:none;margin:0;padding:0}.event{padding:1rem 0;border-bottom:1px solid var(--border);transition:background .15s}.event:last-child{border-bottom:none}.ev-main{display:flex;flex-direction:column;gap:.15rem}.ev-title{font-weight:600;font-size:1.05rem}.ev-meta{color:var(--muted);font-size:.9rem}.badge{display:inline-block;-webkit-margin-start:.5rem;margin-inline-start:.5rem;font-size:.72rem;font-weight:600;color:#065f46;background:#d1fae5;border-radius:999px;padding:.1rem .6rem;vertical-align:middle}.toggle{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle input{margin-top:.35rem;width:1.25rem;height:1.25rem;accent-color:var(--accent);cursor:pointer}.footer-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}@media (max-width:480px){.actions,.btn.primary{width:100%;text-align:center}.row.between{align-items:stretch;gap:.75rem}.premium-banner{padding:1.25rem 1rem}}