:root{--diosum-purple:#5b2a86;--diosum-gold:#c9a227;--bg:#f6f4f9;--surface:#fff;--text:#1f1a26;--text-muted:#6b6375;--border:#e3dfe8;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-height:100vh;margin:0}.header{background:var(--diosum-purple);color:#fff;border-bottom:4px solid var(--diosum-gold);padding:.75rem 1rem}.header-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;max-width:1100px;margin:0 auto;display:flex}.wordmark{letter-spacing:.02em;font-size:1.35rem;font-weight:700}.header-actions{align-items:center;gap:.75rem;min-width:0;display:flex}.user-email{text-overflow:ellipsis;white-space:nowrap;max-width:14rem;font-size:.9rem;overflow:hidden}.btn{font:inherit;border:2px solid var(--diosum-gold);cursor:pointer;border-radius:6px;padding:.45rem .9rem;font-weight:600}.btn:disabled{opacity:.6;cursor:default}.btn-gold{background:var(--diosum-gold);color:#1f1a26}.btn-outline{color:#fff;background:0 0}.signin-form{flex-wrap:wrap;align-items:center;gap:.5rem;max-width:1100px;margin:.75rem auto 0;display:flex}.signin-form input{font:inherit;border:1px solid var(--border);border-radius:6px;flex:12rem;min-width:0;padding:.45rem .6rem}.form-error{color:#9b1c1c;background:#fff3f3;border-radius:6px;flex-basis:100%;margin:0;padding:.4rem .6rem;font-size:.9rem}.main{max-width:1100px;margin:0 auto;padding:1.5rem 1rem 3rem}.tile-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=600px){.tile-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=900px){.tile-grid{grid-template-columns:repeat(3,1fr)}}.tile{background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--diosum-purple);min-height:9rem;color:inherit;border-radius:10px;flex-direction:column;gap:.35rem;padding:1.25rem;text-decoration:none;display:flex}.tile-name{color:var(--diosum-purple);margin:0;font-size:1.2rem}.tile-desc{color:var(--text-muted);flex:1;margin:0}.tile-live{cursor:pointer;transition:box-shadow .15s,transform .15s}.tile-live:hover,.tile-live:focus-visible{border-top-color:var(--diosum-gold);transform:translateY(-2px);box-shadow:0 6px 18px #5b2a862e}.tile-soon{opacity:.55;border-top-color:var(--border);cursor:default;-webkit-user-select:none;user-select:none;background:0 0}.badge{background:var(--diosum-gold);color:#1f1a26;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-self:flex-start;padding:.15rem .6rem;font-size:.75rem;font-weight:700}
